Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

scikit-build python package for pkgsrc #292

Open
jimhall opened this issue Jan 4, 2021 · 6 comments
Open

scikit-build python package for pkgsrc #292

jimhall opened this issue Jan 4, 2021 · 6 comments
Assignees

Comments

@jimhall
Copy link

jimhall commented Jan 4, 2021

Hi -

I was trying to build a python package on Solaris called Camelot.

Camelot seems to have a dependency on the python package scikit-build.

scikit-build has some code skbuild/platform_specifics/platform_factory.py which prevents building on illumos / Solaris. But it does allow for FreeBSD. Browsing this repository I see there is some scikit python modules, but not this specific modules.

My question: has Joyent/pkgsrc already tried to port this package? My python skills are not that great - but seeing that the package allows for FreeBSD I thought perhaps it would not be a huge leap to get to illumos. This repo just seems to hammer away at software like this. So I was wondering if you guys (if it is not in this repo already) porting this package to pkgsrc.

This package seems to be a dependency for a lot of Python packages. So I think it would help the overall ecosystem.

Thanks for you consideration!

JIM

@jimhall
Copy link
Author

jimhall commented Jan 4, 2021

Forgot to add I have submitted a request to scikit-build Issue 520, but that repo is not super active.

@jperkin jperkin self-assigned this Jan 4, 2021
@jperkin
Copy link
Collaborator

jperkin commented Jan 4, 2021

Yeh it doesn't look like there's anything specific in there that prevents it from running on other OS.

There are a bunch of scikit packages in pkgsrc-wip but not this one, I'll try to take a look some time.

@jimhall
Copy link
Author

jimhall commented Jan 4, 2021

Thanks for the quick response!

jperkin pushed a commit that referenced this issue Mar 30, 2021
    Update savegame format (see #303 and #344)
        old savegames still work, but new savegames can't be loaded with older versions of dhewm3!
    Uploaded updated builds of Mod DLLs, now also supporting LibreCoop and The Lost Mission
    dhewm3 now supports the Doom3 Demo gamedata
        See below for installation instructions
        This is based on Gabriel Cuvillier's code for D3Wasm, which ports dhewm3 to web browsers, thanks!
    Create the game window on the display the cursor is currently on (when using more than one display)
    Added r_fullscreenDesktop CVar to set if fullscreen mode should be "classic" or "Desktop" which means a borderless window at desktop resolution
    Fullscreen modes that are not at the current desktop resolution should work better now
        including nvidia DSR / AMD VSR; for that you might have to use the supplied dhewm3_notools.exe, as DSR/VSR seem to be incompatible with applications that use MFC (the GUI framework used for the Doom3 tools like the D3Radiant)
    Several sound-related bugfixes:
        Lags in starting to play a sound which for example caused the machinegun or plasmagun sounds to stutter have been eliminated (#141)
        Trying to reset disconnected OpenAL devices, this esp. helps with display audio on Intel GPUs on Windows, when switching to fullscreen (#209)
        Looping .wav sounds with leadin now work (#291)
        The game still works if no sound devices are available at all (#292)
        Make "idSoundCache: error unloading data from OpenAL hardware buffer" a Warning instead of an Error so it doesn't terminate game (by Corey O'Connor, #235)
    Restore "Carmack's Reverse" Z-Fail stencil shadows; use glStencilOpSeparate() if available
        That bloody patent finally expired last October: https://patents.google.com/patent/US6384822B1/en
        This neither seems to make a visual nor performance difference on any hardware I tried (including Raspberry Pi 4), so this is mostly out of principle
        Based on Code by Leith Bade and Pat Raynor.
        The r_useCarmacksReverse and r_useStencilOpSeparate CVars allow switching both things on/off for comparison
    New CVar g_hitEffect: If set to 0, the player camera damage effects (like double-vision and extreme tilt) when being hit are disabled (by dobosken, #279).
    (On Windows) stdout.txt and stderr.txt are not saved next to the binary anymore, but in My Documents/My Games/dhewm3/, like save games, because the binary dir might not be writable and dhewm3 wouldn't start properly then
    Fix lingering messages in HUD after loading savegame
        Sometimes the "Game saved..." message didn't go away after loading a savegame (when having saved while it still was showing from last save)
    Fixed clipping bug in delta1 (see #328)
    Improve compatibility with some custom scripts ("t->c->value.argSize == func->parmTotal" Assertion; see #303)
    Registering multiplayer servers at id's master-server fixed, so they can be found in the multiplayer menu (by Stradex, #293)
    Support for reproducible builds by setting the CMake option REPRODUCIBLE_BUILD.
    Should build on recent versions of macOS, also on Apple Silicon (thanks Dave Nicolson and Petter Uvesten).
    Proper handling of paths with dots in directory names (#299, #301)
        Some string functions that are intended to find/cut off/replace/... file extensions did cut off the whole path at dots..
        Especially fixes loading and saving maps from such paths in the builtin D3Radiant level editor
    idFileSystemLocal::ListMods() doesn't search / or C:\ anymore (it did so if one of the paths, like fs_cdpath, was empty)
    Don't use translation in Autosave filenames (see #305)
        In the Spanish translation all the Alpha Lab autosaves got the same name, now the autosave name is based on the mapename instead which is distinct
@jimhall
Copy link
Author

jimhall commented Jun 26, 2021

Just a friendly check-in to see if scikit-build was put in pkgsrc-wip

jperkin pushed a commit that referenced this issue Aug 3, 2021
Announcements:

== Release 0.9.10

Major feature enhancements

New Features

R7RS Large and SRFI support

We cover R7RS-large Red and Tangerine Edition.

  * scheme.ilist: Immutable list library
  * scheme.rlist: Random access lists
  * scheme.bytevector: R6RS-compatible bytevectors
  * scheme.text: Immutable texts
  * scheme.show: Combinator formatting
  * scheme.regex: Scheme Regular Expressions: Grapheme support is
    completed by @pclouds.

  * srfi-78: Lightweight testing (now integrated with gauche.test).
  * srfi-101: Purely functional random-access pairs and lists
    (scheme.rlist)
  * srfi-116: Immutable list library (scheme.ilist)
  * srfi-130: Cursor-based string library
  * srfi-135: Immutable texts (scheme.text)
  * srfi-159: Combinator formatting (scheme.show)
  * srfi-170: POSIX API
  * srfi-174: POSIX timespecs
  * srfi-175: ASCII character library
  * srfi-176: Version flag. Supported as built-in. (version-alist)
  * srfi-178: Bitvector library
  * srfi-180: JSON
  * srfi-181: Custom ports
  * srfi-185: Linear adjustable-length strings
  * srfi-189: Maybe and either: optional container types
  * srfi-192: Port positioning
  * srfi-193: Command line
  * srfi-195: Multiple-value boxes (Boxes).

New modules

  * parser.peg: PEG parser combinator library. This module has been
    unofficially included for long time, but it finally became
    official. If you've been using it, check out the document, for
    API has been changed. Compatibility module is provided.
  * data.skew-list: Skew binary functional random-access list
  * data.priority-map: Priority map.
  * rfc.uuid: UUID generation and parsing.
  * text.external-editor: Running external editor.
  * text.pager: Display with pager.

Improvements

String indexing improvements

In Gauche, string access using integer character index costs O(n)
by default, because we store strings in multibyte format. Two
improvements are incorporated to allow O(1) random string access.

  * String cursors (srfi-130). It is an object directly points
    to a specific character within a string, thus allowing O(1)
    access. It is supported natively, so all built-in string
    procedures that takes character index also accept string
    cursors. See String%20cursors, for the details. This is the
    work mostly done by @pclouds.
  * String indexing (scheme.text). You can precompute a string
    index, which is an auxiliary data attached to a string that
    allows O(1) integer character index access. You need O(n) to
    compute a string index, but once computed, character index
    access in that string becomes O(1). In R7RS-large, scheme.text
    library provides this feature (with a distinct type text). In
    Gauche, a text is simply a string with a string index computed.
    See String indexing for the details.

Note: Gauche internally had string pointers to implement some string
operations efficiently. Now string cursors can be used for that
purpose, we dropped string pointers. If you have code that uses
string pointers, although it was undocumented, you can keep using
it by defining GAUCHE_STRING_POINTER environment variable. We'll
completely drop it in the next release, though.

Immutable pairs

Scheme defines literal pairs to be immutable, but it is up to the
implementation to check it. Gauche used to not check it, allowing
mutating literal pairs. Now it is no longer allowed--it throws an
error. Mutating literal pairs is never correct, and if you get the
error, you've been doing it wrong.

Immutable pairs can also be explicitly constructed using scheme.ilist
module. In Gauche, immutable pairs and lists behaves exactly like
normal pairs and lists, except that they can't be modified. See
Mutable and immutable pairs, for the details.

If your code depends on the previous behavior and can't change
swiftly, set the environment variable GAUCHE_MUTABLE_LITERALS to
restore the old behavior.

Input line editing

The editor feature is enhanced a lot, including online help. Type
M-h h to get a quick cheet sheet.

The line editor isn't turn on by default yet, but you can either
turn on with the command-line option -fread-edit or the environment
variable GAUCHE_READ_EDIT.

Parameters are now built-in

You no longer need to (use gauche.parameter) to use parameters as
defined in R7RS. The module still exists and provides a few obscure
features.

Bitvector literal and incomplete string literals

We now supports bitvector type in the core. Note that there's a
syntax conflict with bitvector literals and incomplete strings;
now the official way of incomplete string literal is to prefix a
string with #**. The older syntax is still recognized as far as
it's not ambiguous. See Incomplete%20strings.

The C-level Port API is overhauled

This only affects for C code using ScmPort. To support future
extensions flexibly, we hide the internal implementation of ScmPort.
It shouldn't affect code that accesses ScmPort via API, but if the
code directly refers to the members of ScmPort, it should be
rewritten to use API.

One notable change is that port positions no longer need to be an
integer offset.

TLS support improvement

  * With default configuration, Gauche searches several known
    locations of ca-certificates, so it can work mostly out of
    the box. See rfc.tls for the details.

  * With default configuration, <mbed-tls> is used if it's available.
    <ax-tls> is always available but its cipher support is limited
    and can't connect to some https sites.

  * You can also configure to embed MbedTLS support into Gauche so
    that it will run on a system that doesn't have MbedTLS installed.
    (See INSTALL.adoc for the details.) Note that if you embed
    MbedTLS, the resulting binary is covered by MbedTLS Apache
    License 2.0 as well. Windows Installer version has MbedTLS
    embedded.

Encoding conversion improvement

Now we support conversion natively, between UTF (8, 16, 32) and
ISO8859-n, as well as between Japanese encodings. We use iconv(3)
only when we need to deal with other encodings.

This is because iconv lacks a necessary API to support srfi-181
transcoded ports properly. If you just need to convert encodings,
you can keep using gauche.charconv and it handles wide variety of
encodings supported by iconv. If you use srfi-181, the conversion
is limited between the natively supported encodings.

We may enhance native support of conversions if there's need for it.

Miscellaneous improvements

  * gauche.generator: Add giterate, giterate1.
  * gauche.lazy: Add literate.
  * format: Make ~f handle complex numbers as well, and added a bunch
    of new directives: ~t, , ~~, ~|, and ~$.
  * define-hybrid-syntax: The compiler macro feature.
  * current-trace-port: A parameter to keep trace output. Output of
    debug-print goes to this port, for example. The default is stderr.
  * gauche.record: Allow record types to inherit from non-record
    class, as long as the superclass doesn't add slots.  Also allow
    to specify metaclasses.
  * gauche.unicode: Conversion procedures utf8->ucs4 etc. now takes
    replace strictness that replaces invalid unicode sequence with
    U+FFFD. utf8->string is also changed to use the replace character
    for invalid input sequence, instead of throwing an error.
  * gauche.unicode: string->utf16: Add add-bom? argument.
  * gauche.unicode: Add string->utf32, utf32->string.
  * identifier?: Now it responds #t to both symbols and wrapped
    identifiers. In ER-macro systems, identifiers can be a bare
    symbol as well. To check an object is an identifier but not a
    symbol, you can use wrapped-identifier? to check an object is
    a non-symbol identifier.
  * When gosh is run inside a build tree (with -frest option), make
    sure we link with libgauche.so in the build tree regardless of
    the setting of LD_LIBRARY_PATH. (PR#557)
  * apropos now takes a string as well as a symbol (PR#555)
  * Character set is now hashable with the default-hash.
  * Add .dir-locals.el file in the source tree. It sets up Emacs to
    add some Gauche-specific indentations.
  * If gosh is run in suid/sgid process, do not load .gaucherc file
    and do not load/save history files.
  * complete-sexp? is moved to the core (used to be in gauche.listener.
  * string->number: Added default-exactness optional argument to
    specify the exactness of the result when no exactness prefix is
    given in the input.
  * gauche-package generate can now generate template of Scheme-only
    package.
  * srfi-42: Added :collection qualifier to use a collection as a
    generator.
  * gauche.fcntl: Added sys-open, sys-statvfs, sys-fstatvfs.
  * sys-utime: Allow <time> object for timestamp.
  * sys-nice: Added nice() interface.
  * make-hash-table: If a comparator whose equalily predicate is
    eq?/eqv?, we use eq-hash/eqv-hash regardless of comparator's hash
    function. It is permitted by srfi-125, and it allows objects that
    doesn't have hash method can still be used with eq/eqv based
    hashtables (#708).
  * gauche.vport: Add bidirectional virtual port. Add
    open-output-accumulator.
  * gauche.process: Allow command pipeline in process port API (#717).
    Also :error keyword argument accepts :merge, to tell run-process
    that stderr should be merged into stdout.
  * gauche.process: Added process-wait/poll, process-shutdown.
  * gauche.threads: atomic-update!: Allow proc to return more values
    than the atom holds. It is useful if one wants to update atom
    state and compute something using before-update values.
  * gosh: -e option can accept multiple S-expressions.
  * gauche.dictionary: Add <stacked-map>.

Bug fixes

  * Fix double-rounding bug when converting ratnum to flonum.
    Originall reported in Ruby, it is a common issue that first
    convert numerator and denominator to double and then divide.
    (blog entry).
  * math.mt-random: (Incompatible change) When the given seed is
    bignum, we use all bits now to initialize the RNG. The previous
    versions only used the lowest word, but that loses the entropy.
    Technically this causes RNG to produce different sequence if the
    seed is bignum. For typical usage, though, seed is within fixnum
    or at most as wide as a machine word and we think it's rare that
    the change becomes an issue.
  * Some macro-defining-macro issues are fixed, including #532 .
  * file.util: make-directory*: Fixed timing hazard.
  * www.css: construct-css: Fix :not pseudo class rendering (PR#645),
    added missing an+b syntax (PR#648).
  * gauche.process: High-level utilities didn't handle :encoding
    keyword argument (#651).
  * load-from-port: Fixed a bug that didn't reset literal reader
    context (#292).
  * apply detects if the argument list is circular and throws an error.
  * copy-list detects the circular list and throws an error.
  * scheme.list: lset=: Argument order to invoke the equality
    predicate was incorrect.
  * math.prime: native-factorize: Reject other than positive exact
    integers. Factorizing 1 returns ().
  * assume: Fix to return the value of the expression.
  * and-let*: Fix 20-year old bug - and-let* is allowed to take an
    empty body.
  * let-optionals*: There was a bug that inserts reference of
    undefined hygienically, causing an error when used in R7RS code
    that doesn't inherit gauche module.
  * rfc.json: construct-json: Allow non-aggregate toplevel value. It
    was prohibited in rfc4627, but allowed in rfc7159.
  * pprint: Fix circular structure printing in case when the cycle
    begins in the middle of a list (#713).




== Release 0.9.9


Bug fix and enhancements

  * New features
      - More R7RS-large and SRFI support
      - Charset enhancements to Full Unicode range
      - Macro tracer
      - Checking use of undefined result in conditionals
  * Improvements
  * Bug fixes
  * Potential incompatibilities

New features

More R7RS-large and SRFI support

  * scheme.stream: Streams (formerly srfi-41).
  * scheme.ephemeron: Ephemeron (formerly srfi-124).
  * scheme.regex: Scheme Regular Expression (formerly srfi-125).
    Contributed from @pclouds. Grapheme support is still missing.
  * scheme.vector.u8 etc.: Homogeneous numeric vector libraries
    (srfi-160).

  * srfi-162: Comparators sublibrary.
  * srfi-173: Hooks.

Charset enhancements to Full Unicode range

  * Predefined char-sets (srfi-14) are enhanced to the entire Unicode
    range, e.g. char-set:digit now includes all Unicode characters
    with general category Nd. If you want to limit the range to ASCII,
    there are corresponding char sets (e.g. char-set:ascii-digit)
    provided.
  * 'Umbrella' general category char-set: char-set:L includes
    characters from general categories that begin with L, etc.
  * In regexps and char-set literals, you can use \p{category} and
    \P{category}, where category is Unicode general category, e.g. Lu.
  * The \d, \w, \s in regexp and char-sets are still limited to ASCII
    range, for changing them would likely to break existing code.
  * POSIX notation [:alpha:] etc., also covers ASCII range only. To
    cover full Unicode, you can use [:ALPHA:] etc.

Macro tracer

  * trace-macro: You can now trace macro expansion.

Checking use of undefined result in conditionals

  * Return value of procedures that return "undefined result"
    shouldn't be used in portable code. However, Gauche usually
    returns #<undef> from such procedures, and it counts to true as
    a boolean test in conditionals. We found quite a few code that
    branches based on the result of undefined return value. Such code
    is fragile, for it may break with unintentional change of return
    values of such procedures. Gauche can now warn such cases when
    the environment variable GAUCHE_CHECK_UNDEFINED_TEST is set. See
    the blog entry and Undefined values.

Improvements

  * Partial continuation support is overhauled w.r.t interaction with
    dynamic environment and full continuations. Contributed by
    @Hamayama.
  * gauche.uvector: Support uniform complex vectors (c32, c64 and c128).
  * gauche.test: New compile-only option to test-script, so that it
    can perform syntax check without executing the actual script
    (useful if the script is written without using main).
  * gauche.generator: Add negative step value support to grange.
  * regexp-replace etc.: It used to be an error when regexp matches
    zero-length string. Which wasn't wrong, but in practice it was
    annoyance. Now if regexp matches zero-length string we advance
    one character and repeat matching.  This behavior is also adopted
    by Perl and Ruby.
  * gosh -h now emits help messages to stdout and exits with 0.
  * Experimental line editor: backward-word and forward-word added by
    @pclouds PR#524

Bug fixes

  * Keyword argument handling wasn't hygienic.
  * pprint: Prettyprint emits negative labels (#484)
  * Extend the limit of environment frame size (#487)
  * Scm_CharSetAdd could yield inconsistent result when you add an
    ASCII character to a large charset. Patch by @pclouds PR#500
  * import: Only/rename import qualifiers didn't work with transitiev
    export (#472)
  * Some system calls shouldn't be restarted when interrupted. #504
  * format: ~vr didn't work. #509
  * sort!, stable-sort!: We implemented them as if they were
    linear-updating, that is, we didn't guarantee if the argument
    still pointed to the head of the sequence after the call.
    However, srfi-95 didn't explicitly mentions linear updating
    semantics, so we guaranteed that caller can call them purely
    for side-effects.

Potential incompatibilities

  * Scm_RegExec now takes two more arguments specifying start and
    end of the range of input string. I overlooked this change and
    missed to add a proper transition macro. You can use #ifdef
    SCM_REGEXP_MULTI_LINE to switch the new interface vs the old one.
  * Toplevel define now inserts a dummy binding at compile-time
    (as a result of #549). It is consistent with the specification,
    but existing code that relied on undefined behavior might be
    affected. See the blog entry.
  * The (scheme base) library inadvertently exported Gauche's define
    instead of R7RS define; Gauche's define recognizes extended lambda
    arguments, while R7RS's not. This was a bug and fixed now, but
    if your R7RS code happens to use Gauche's extended argument
    notation, it'll break.
  * macroexpand: Now it strips syntactic information from the return
    values (with renaming macro-inserted identifiers, so that different
    identifiers with the same name won't be confused). This generally
    improves interactive use when you check how macros are expanded.
    If you're using the output of macroexpand programatically, this
    may break hygiene; you can pass an optional argument to preserve
    syntactic information.
  * parser.peg: This module is still unofficial, but in case you're
    using it: $do is now obsoleted. Use $let and $let*.  $parameterize
    is added by @SaitoAtsushi.



== Release 0.9.8


Bug fixes and enhancements

  * Major changes
      - The syntax of quasirename is changed
      - Keywords are symbols by default.
      - Some support of R7RS-Large Tangerine Edition.
      - Prettyprinting is now default on REPL.
  * Bug fixes
  * Other notable changes

Major changes

The syntax of quasirename is changed

The template was implicitly quasiquoted before, but it turned out
it interferes when quasiquote and quasirename were nested. Now the
template needs to be explicitly quasiquoted. The old syntax is also
supported for the backward compatibility. You can change the
supported compatibility level by an environment variable
GAUCHE_QUASIRENAME_MODE. See the manual entry of quasirename and
the blog post for more details.

Keywords are symbols by default.

There can be some corner cases that causes backward compatibility.
You can revert to the old behavior by setting an environment variable
GAUCHE_KEYWORD_DISJOINT. See the "Keyword" section of the manual
for how to adapt to the new way.

Some support of R7RS-Large Tangerine Edition.

We have scheme.mapping, scheme.mapping.hash, scheme.generator,
scheme.division, scheme.bitwise, scheme.fixnum, scheme.flonum. See
Gauche:R7RS-large for which libraries in R7RS-Large have been
supported.

Prettyprinting is now default on REPL.

If it bothers you, set an environment variable GAUCHE_REPL_NO_PPRINT.

Bug fixes

  * The identifiers _ and ... are bound to syntax, to be friendly to
    hygienic macros.
  * floor/ and ceiling/ returned incorrect values when remainder is zero.
  * During compilation, feature identifiers are considered according
    to the target platform, so that cross compilation work (#407).
  * A finite inexact number multiplied by an exact zero now yields an
    exact zero consistently.
  * Precompiled uniform vectors had lost infinities, NaNs and minus
    zeros. Now they are handled properly.
  * The record accessor accidentally leaked #<unbound> to the Scheme
    world.

Other notable changes

  * GC version is bumped to 8.0.4, thanks to @qykth-git.
  * Unicode support is bumped to 12.1.0, thanks to @qykth-git (#471).
  * Numerous enhancements on Windows/MinGW version, thanks to @Hamayama.
  * Now gauche-package compile command has --keep-c-files and --no-line
    options, for easier troubleshooting with generated C files (#427).
  * gauche.cgen.cise: Enhanced support for C procedure declaration,
    C struct and union type definition, and function type notation.
  * Default hash function works on uniform vector (#440)
  * The gauche.interactive module now doesn't load ~/.gaucherc---that
    feature is splitted to gauche/interactive/ init.scm. Thus, when
    you start gosh it still reads ~/.gaucherc, but if you use
    gauche.interactive as an ordinary module, it doesn't load
    .gaucherc (#448).
  * gauche.array: New procedures array-negate-elements!,
    array-reciprocate-elements!.
  * disasm: Now it shows lifted closures as well.
  * When the number of arguments passed to apply is fixed at the
    compile time, the compiler now optimize apply away.  For example,
    (apply f 'a '(b c)) now becomes exactly the same as (f 'a 'b 'c).
    If this optimization somehow causes a problem, pass
    -fnodissolve-apply option to gosh.
  * srfi-42: Uniform vectors are supported just like vectors.
  * Now we have predefined char-set for each of Unicode general
    category, e.g. char-set:Lu.
  * New flonum procedures: approx=?, flonum-min-normalized,
    fronum-min-denormalized.
  * gauche.vport: Virtual port constructors accept :name argument.



== Release 0.9.7


Major C API/ABI overhaul

  * Changes of C API/ABI
  * New modules and procedures
  * Bug fixes and improvements
  * Incompatible changes in unofficial module

Changes of C API/ABI

This release includes several C API/ABI changes that breaks the
backward compatibilities, in order to have clean API towards 1.0.
Although we haven't officially defined C API/ABI, we kept the de
facto backward compatible as much as possible. Some turned out to
be design shortcomings. We don't want them to hinder future
developments, so we decided to change them now.

In most cases, all you need to do is to recompile the extensions.
We checked existing extensions being compilable with the new version
as much as possible. If you find an extension breaks, let us know.
See API Changes in 0.9.7 for the details. We bumped ABI version
from 0.9 to 0.97, so the extensions compiled up to 0.9.6 won't be
linked with the new version of Gauche. If necessary, you can install
0.9.6 and 0.9.7 Gauche in parallel, and switch them using -v VERSION
option.

If you're not sure what extensions you've installed, check the
directory ${prefix}/share/gauche-0.9/site/lib/.packages /. It
contains gpd (Gauche Package Description) files of the extensions
you've installed for 0.9.6 and before.

New modules and procedures

  * srfi-154: First-class dynamic extents
  * gauche.connection: An interface that handles connection-based
    full-dupex communication channel. The <socket> (gauche.net)
    class implements it, as well as a couple of other classes. It
    allows to write a communication code (e.g. server request
    handlers) without knowing the underlying connection implementation.
  * text.edn: Parse and write Clojure's EDN representation.
  * compat.chibi-test: A small adapter module to run tests written
    for Chibi Scheme (some srfi reference implementations use it)
    within gauche.test.
  * text.html-lite: HTML5 elements are added. PR#363
  * gauche.array: Export array-copy.
  * gauche.configure: Add more feature tests: cf-check-lib,
    cf-check-libs, cf-check-type, cf-check-types, cf-check-func,
    cf-check-funcs, cf-check-decl, cf-check-decls, cf-check-member,
    cf-check-members. Also added cf-init-gauche-extension and
    cf-output-default, which takes care of common task of Gauche
    extensions so that the configure script can now be very terse.
  * gauche-package make-tarball is updated to read package.scm. Used
    with gauche.configure, this eliminates the need of DIST script
    for the extensions.
  * file.util: Added call-with-temporary-file,
    call-with-temporary-directory.
  * assoc-adjoin, assoc-update-in: A couple of new assoc-list procedures.

Bug fixes and improvements

  * rfc.tls: If CA bundle path is set, axTLS connection also
    validates server certificates (mbedTLS rejects connection
    when CA bundle path is not set). PR#362
  * rfc.tls: On Windows, you can specify system as CA bundle
    path to use the system certificate store.  PR#395 , PR#398
  * rfc.tls: If Gauche is configured with mbed-tls but without
    axtls, the default tls class is set to <mbed-tls>.
  * Bumped to bdwgc 7.6.8. PR#373
  * Experimentally turned on generic function dispatcher
    optimization for ref and object-apply by default. It could
    boost the performance of these generic function calls up to
    5x. We keep monitoring the effect of optimization and will
    enhance it in future.
  * Now glob sorts the result by default (consistent of glob(3).
    To avoid sorting, or supply alternative sort procedure, use
    :sorter argument.
  * REPL's info uses the value of the PAGER environemnt variable
    for paging. Now you can put command-line arguments in it (not
    only the command name). PR#358
  * REPL's info failed to work when Gauche is built without zlib
    support.
  * sxml.serializer: If the attribute value is the same as attribute
    name, we took it as a boolean attribute and just rendered with
    attribute name only. It interferes with an attribute with the
    value that happens to be the same as the name, so we changed it.
    This is backward-compatible change. PR#359
  * sxml.ssax: Fix whitespace handling. PR#360
  * We had a kludge to handle a setter of a slot accessor method,
    that causes confusion when you use the module that implements a
    base class then define slot accessor in the derived class. It
    is fixed. See the thread
      https://sourceforge.net/p/gauche/mailman/message/36363814/
    for the details.
  * Now we handle utf-8 source file that has BOM at the beginning.
  * open-input-file, open-output-file, etc.: We now honor element-type
    keyword arguments (it was ignored before). It only makes
    difference on Windows.
  * scheme.set: Fix set<? etc.
  * util.digest: digest-hexify can now take u8vector as well.
  * A bug in hash-table-copy caused inconsistent hash table state. #400

Incompatible changes in unofficial module

  * parser.peg: Removed pre-defined character parsers (anychar,
    upper, lower, letter, alphanum, digit, hexdigit, newline, tab,
    space, spaces, and eof) and shorthands ($s, $c, and $y). Those
    names are easy to conflict (esp.  'newline') yet not so much
    useful, for it's quite easy to define. If existing code relies
    on these procedures, say (use parser.peg.deprecated).
@jimhall
Copy link
Author

jimhall commented Nov 29, 2021

Hi -

Just another friendly check-in. It looks you are making a to a language called gauche. Just curious what that has to do with scikit-build?

@jperkin
Copy link
Collaborator

jperkin commented Nov 29, 2021

I've not had the chance to look at this yet. The gauche thing is a GitHub bug that they refuse to fix, unfortunately any commit to pkgsrc that references any existing ticket in this repo will get tagged, and there's nothing we can do to turn that off.

jperkin pushed a commit that referenced this issue Jan 24, 2022
# 0.66

Asciidoc:
 * Support empty cells in tablecells mode (GitHub's #343) [J.N. Avila]
 * Disable tablecells when table is not in PSV format (GitHub's #343 too)
   [J.N. Avila]

Yaml:
 * New option "paths" to select the full paths to extract.
   The old "key" option (that allows to select any path ending with
   the given key) still works as previously (thanks Oliver Rahner).

Tests:
 * Make the SGML tests use valid input files to fix brekages on
   paranoid OSes (GitHub's#327 -- thanks newbluemoon for report and fix).
 * Add a new tests that fixes the weird permission settings of the
   other tests, and prevent the users from running the tests as root.
   (GitHub's #332 -- thanks Oliver Rahner for stepping on that trap)
 * Fix the testsuite so that it works even if the source is checkouted
   in an arbitrary directory (GitHub's #338).

po4a-gettextize:
 * Use UTF-8 by default for localized charset.

# 0.65

Asciidoc:
 * Ensure that comments appear in the translated contents, to preserve
   the document structure (Github's #307 and #308). Thanks Jean-Noël
   Avila for the fix!
 * Add an "nolinting" option to disable lint messages.

po4a runner:
 * In split mode, allow to group several files within the same POT file.
 * Rename the option 'master:file' to 'pot' for clarity. The old name
   still works (with a warning).

Tex:
 * Don't use the full absolute file path in #: references of PO files.
   (Debian's #998196, Github's #281)

# 0.64

Asciidoc:
 * Detect sublevel description lists with :::
 * Don't split in attributes include:: and ifeval:: lines (Github's #298)

Pod:
 * Don't wrap textblocks, as it may break C<> markup (similar to Github's #242)

Core:
 * Mitigate Perl bug #18604 (simplify a regexp into a substring index) (Github's #302)
 * Improve the consistency of all our module lists (related to Github's #136)
   Thanks Viet Than.

# 0.63

A bug in v0.62 removed all binary translations :(

Asciidoc:
 * Properly deal with the YAML Front Matter, when one is found.

Texinfo:
 * Add support for @tindex (Github's #284)

Yaml:
 * Follow the reference style of YAML Front Matter in Markdown module to
   fix the GitHub issue #289. (GitHub's #292)

Portability:
 * Fix po4a(1) on Windows (GitHub's #293)

Build scripts:
 * Fix Po4aBuilder to use -I instead of reseting PERL5LIB (Github's #286)
 * Fix Po4aBuilder to actually install the mo files (GitHub's #294)
jperkin pushed a commit that referenced this issue Jun 2, 2022
Upstream changes:
Changes in 0.4-20 (2022-04-29)

    Remove check for Yahoo Finance cookies because the site no longer responds with a cookie, and that caused the connection attempt to fail. This affected getSymbols(), getDividends(), and getSplits(). Thanks to several users for reporting, and especially to @pverspeelt and @alihru for investigating potential fixes! #358

    Update getSymbols.yahooj() for changes to the web page. #312

    Add HL() and supporting functions. These are analogues to HLC(), OHLC(), etc.Thanks for Karl Gauvin for the nudge to implement them.

    Add adjusted close to getSymbols.tiingo() output. Thanks to Ethan Smith for the suggestion and patch! #289 #345

    Use a Date index for getSymbols.tiingo() daily data. Thanks to Ethan Smith for the report! #350

    Remove unneeded arguments to the getSymbols.tiingo() implementation. Thanks to Ethan Smith for the suggestion and patch! #343 #343

    Load dividends and splits data into the correct environment when the user provides a value for the env argument. The previous behavior always loaded the data into the environment the function was called from. Thanks to Stewart Wright for the report and patch! #33

    Make getOptionChain() return all the fields that Yahoo Finance provides. Thanks to Adam Childers (@rhizomatican) for the patch! #318 #336

    Add orats as a source for getOptionChain(). Thanks to Steve Bronder (@SteveBronder) for the suggestion and implementation! #325

    Improve the error message when getSymbols() cannot import data for a symbol because the symbol is not valid or does not have historical data. Thanks to Peter Carl for the report. #333

    Fix the getMetals() example in the documentation. The example section previously had an example of getFX(). Thanks to Gerhard Nachtmann

    for the report and patch! #330

    Fix getQuote() so it returns data when the ticker symbol contains an “&”. Thanks to @pankaj3009 for the report! #324

    Fix addMACD() when col is specified. Thanks to @nvalueanalytics for the report! #321

Changes in 0.4-18 (2020-11-29)

    Fix issues handling https:// in getSymbols.yahooj(). Thanks to @Lobo1981 and @tchevri for the reports and @ethanbsmith for the suggestion to move from XML to xml2. #310 #312

    Fix getSymbols.yahoo(), getDividends(), and getSplits() so they all handle download errors and retry again. Thanks for @helgasoft for the report on getSymbols.yahoo() and @msfsalla for the report on getDividends() and getSplits(). #307 #314

    Add implied volatility and last trade date to getOptionChain() output. Thanks to @hd2581 and @romanlelek for the reports. And thanks to @rjvelasquezm for noticing the error when lastTradeDate is NULL. #224 #304

    Fix getOptionChain() to throw a warning and return NULL for every expiry that doesn’t have data. #299

    Add “Defaults” handling to getQuote() and getQuote.yahoo(). Thanks to @ethanbsmith for the report. #291

    Add Bid and Ask fields to the output from getQuote(). Thanks to @jrburl for the report and PR. #302

    Fix “Defaults” to handle unexported function (e.g. getQuote.av(). Thanks to @helgasoft for the report. #316

    importDefaults() doesn’t call get() on vector with length > 1. Thanks to Kurt Hornik for the report. #319

Changes in 0.4-17 (2020-03-31)

    chartTheme() now works when quantmod is not attached. Thanks to Kurt Hornik for the report.

Changes in 0.4-16 (2020-03-08)

    Remove disk I/O from getSymbols() and getQuote(). This avoids any disk contention, and makes the implementation pattern more consistent with other functions that import data. Thanks to Ethan Smith suggestion and PR. #280 #281

    Make getQuote() robust to symbols without data, so it does not error if one or more symbols are not found. Also return quotes in the same order as the ‘Symbols’ argument. Thanks to Ethan Smith feature request and PR. #279 #282 #288

    Handle semicolon-delimited symbol string handling to main getQuote() function. This makes getQuote() consistent with getSymbols(). Thanks to Ethan Smith suggestion and PR. #284 #285

    Fix ex-dividend and pay date mapping. getQuote() returned the dividend pay date labeled as the ex-dividend date. Thanks to @matiasandina for the report. #287

    Fix Yahoo Finance split ratio. The delimiter changed from “/” to “:”. For example, a 2-for-1 split was 1/2 but is now “2:1”. Thanks to @helgasoft for the report. #292

    Error messages from getQuote.alphavantage() and getQuote.tiingo() no longer contain the API key when symbols can’t be found. #286

    Fix getQuote.alphavantage() by replacing the defunct batch quote request with a loop over the single quote request. Thanks to @helgasoft for the report and patch. #296

    Update getOptionChain() to handle empty volume or open interest Thank to @jrburl for the report and PR. #299 #300
jperkin pushed a commit that referenced this issue Sep 4, 2022
2.0.2 (2022-06-28)

Bug fixes:

* Fix additional incompatible character encodings error when building
  uploaded bodies (Jeremy Evans #311)

2.0.1 (2022-06-27)

Bug fixes:

* Fix incompatible character encodings error when building uploaded file
  bodies (Jeremy Evans #308 #309)

2.0.0 (2022-06-24)

Breaking changes:

* Digest authentication support is now deprecated, as it relies on digest
  authentication support in rack, which has been deprecated (Jeremy Evans
  #294)
* Rack::Test::Utils.build_primitive_part no longer handles array values
  (Jeremy Evans #292)
* Rack::Test::Utils module methods other than build_nested_query and
  build_multipart are now private methods (Jeremy Evans #297)
* Rack::MockSession has been combined into Rack::Test::Session, and remains
  as an alias to Rack::Test::Session, but to keep some backwards
  compatibility, Rack::Test::Session.new will accept a Rack::Test::Session
  instance and return it (Jeremy Evans #297)
* Previously protected methods in Rack::Test::Cookie{,Jar} are now private
  methods (Jeremy Evans #297)
* Rack::Test::Methods no longer defines build_rack_mock_session, but for
  backwards compatibility, build_rack_test_session will call
  build_rack_mock_session if it is defined (Jeremy Evans #297)
* Rack::Test::Methods::METHODS is no longer defined (Jeremy Evans #297)
* Rack::Test::Methods#_current_session_names has been removed (Jeremy Evans
  #297)
* Headers used/accessed by rack-test are now lower case, for rack 3
  compliance (Jeremy Evans #295)
* Frozen literal strings are now used internally, which may break code that
  mutates static strings returned by rack-test, if any (Jeremy Evans #304)

Minor enhancements:

* rack-test now works with the rack main branch (what will be rack 3)
  (Jeremy Evans #280 #292)
* rack-test only loads the parts of rack it uses when running on the rack
  main branch (what will be rack 3) (Jeremy Evans #292)
* Development dependencies have been significantly reduced, and are now a
  subset of the development dependencies of rack itself (Jeremy Evans #292)
* Avoid creating multiple large copies of uploaded file data in memory
  (Jeremy Evans #286)
* Specify HTTP/1.0 when submitting requests, to avoid responses with
  Transfer-Encoding: chunked (Jeremy Evans #288)
* Support :query_params in rack environment for parameters that are appended
  to the query string instead of used in the request body (Jeremy Evans #150
  #287)
* Reduce required ruby version to 2.0, since tests run fine on Ruby 2.0
  (Jeremy Evans #292)
* Support :multipart env key for request methods to force multipart input
  (Jeremy Evans #303)
* Force multipart input for request methods if content type starts with
  multipart (Jeremy Evans #303)
* Improve performance of Utils.build_multipart by using an append-only
  design (Jeremy Evans #304)
* Improve performance of Utils.build_nested_query for array values (Jeremy
  Evans #304)

Bug fixes:

* The CONTENT_TYPE of multipart requests is now respected, if it starts with
  multipart/ (Tom Knig #238)
* Work correctly with responses that respond to to_a but not to_ary (Sergio
  Faria #276)
* Raise an ArgumentError instead of a TypeError when providing a StringIO
  without an original filename when creating an UploadedFile (Nuno Correia
  #279)
* Allow combining both an UploadedFile and a plain string when building a
  multipart upload (Mitsuhiro Shibuya #278)
* Fix the generation of filenames with spaces to use path escaping instead
  of regular escaping, since path unescaping is used to decode it (Muir
  Manders, Jeremy Evans #275 #284)
* Rewind tempfile used for multipart uploads before it is submitted to the
  application (Jeremy Evans, Alexander Dervish #261 #268 #286)
* Fix Rack::Test.encoding_aware_strings to be true only on rack 1.6+ (Jeremy
  Evans #292)
* Make Rack::Test::CookieJar#valid? return true/false (Jeremy Evans #292)
* Cookies without a domain attribute no longer are submitted to requests for
  subdomains of that domain, for RFC 6265 compliance (Jeremy Evans #292)
* Increase required rack version to 1.3, since tests fail on rack 1.2 and
  below (Jeremy Evans #293)
jperkin pushed a commit that referenced this issue Dec 19, 2022
# version 0.8-1

* fix `%/%` and `%%` if arguments have different units; #313

* fix multiplier parsing for `exp(log(x))` operations; #321

* fix specification of secondary axes with `scale_units`; #326

# version 0.8-0

* enhance unit mapping for newly installed units; #290

* remove deprecations: `install_symbolic_unit`, `remove_symbolic_unit`,
  `install_conversion_constant`, `install_conversion_offset`; #290

* fix multipliers for round trip log-exp operations; #292

* integrate `ggplot2` scales (previously in the `ggforce` package) to
  automatically print axes with units; #294 addressing #164

* fix `all.equal.units` for non-units `current`

* fix zero power; #285

* fix `unique.units` to support arrays and matrices, implement methods for
  `duplicated` and `anyDuplicated`

* fix plot labels with spaces; #298 addressing #297

* always add units to labels, including user-provided ones; as part of #298

* new symbols/names with a percentage character are not allowed due to an
  upstream bug; #289
jperkin pushed a commit that referenced this issue Feb 7, 2023
pkgsrc change: remove pkglint warning.

0.29.0.gfm.1 (2021-09-14)

* Fixed denial of service bug in GFM's table extension per
  GHSA-7gc6-9qr5-hc85

0.29.0.gfm.2 (2021-09-16)

* Fixed issues with footnote rendering when used with the autolinker (#121),
  and when footnotes are adjacent (#139).

* We now allow footnotes to be referenced from inside a footnote definition,
  we use the footnote label for the fnref href text when rendering html, and
  we insert multiple backrefs when a footnote has been referenced multiple
  times (#229, #230)

* We added new data- attributes to footnote html rendering to make them
  easier to style (#234)

0.29.0.gfm.3 (2022-03-03)

* Fixed heap memory corruption vulnerabiliy via integer overflow per
  GHSA-mc3g-88wq-6f4x

0.29.0.gfm.4 (2022-05-31)

* Remove source from list of HTML block elements per
  commonmark/commonmark-spec#710

0.29.0.gfm.5 (2022-08-25)

* Added xmpp: and mailto: support to the autolink extension

0.29.0.gfm.6 (2022-09-15)

* Fixed polynomial time complexity DoS vulnerability in autolink extension
  per GHSA-cgh3-p57x-9q7q

0.29.0.gfm.7 (2023-01-23)

* Fixed CVE-2023-22486, a polynomial time complexity issue in cmark-gfm
  which may lead to unbounded resource exhaustion and subsequent denial of
  service.

* Fixed CVE-2023-22485, in which a crafted markdown document could trigger
  an out-of-bounds read in the validate_protocol function.

* Fixed CVE-2023-22484, a polynomial time complexity issue in cmark-gfm
  which may lead to unbounded resource exhaustion and subsequent denial of
  service.

* Fixed CVE-2023-22483, several polynomial time complexity issues in
  cmark-gfm which may lead to unbounded resource exhaustion and subsequent
  denial of service.

* We removed an unneeded .DS_Store file (#291)

* We added a test for domains with underscores and fix roundtrip behavior
  (#292)

* We now use an up-to-date clang-format (#294)

* We made a variety of implicit integer truncations explicit by moving to
  size_t as our standard size integer type (#302)

* We introduced a new flag mechanism that is used in cmark node state
  management, which requires clients call the cmark_init_standard_node_flags
  function at program startup (420c20a)

The security issues were reported and resolved by @kevinbackhouse and
@philipturnbull of the GitHub Security Lab

0.29.0.gfm.8 (2023-01-25)

* We restored backwards compatibility by deprecating the
  cmark_init_standard_node_flags() requirement, which is now a noop (#305)

* We added a quadratic complexity fuzzing target (#304)

0.29.0.gfm.9 Latest (2023-01-31)

Code was tidied:

* Use of a private header was cleaned up #248
* Man page was update #255
* Warnings for -Wstrict-prototypes were cleaned up #285
* We avoid header duplication #289

New functionality:

* We now store positioning info for url_match #201
* We now expose cmark_parent_footnote_def for non-C renderers #254
* Footnote aria-label text now reference the specific footnote backref, and
  we include a data-footnote-backref-idx attribute so the label can be
  internationalized in a downstream filter #307
jperkin pushed a commit that referenced this issue Mar 12, 2023
# igraph 1.4.1

## Bug fixes

- `console()` now works again and provides a Tcl/Tk based UI where igraph can post status messages and progress info (#664).

- Fix errors when printing long vertex names (#677, @ahmohamed).

- Fix regression that broke builds on some systems (e.g., GCC version 5 or earlier), introduced in igraph 1.4.0 (#670, #671).

- `fit_hrg()` does not crash any more when called with a graph that has less than three vertices.

## Documentation

- Various improvements (#663, @maelle; #667).

## Internal

- Fix warning about `yyget_leng()` returning wrong type when using LTO (#676).

- Don't mention C++11 or C++17 for best compatibility with both newest R and older compilers, while still requesting a C++ compiler for linking.

- Don't ignore `build/` when building the package because the vignette index is built there.

- Skip plot test entirely on R-devel.

- Avoid submodules for building igraph (#674).

- Makevars cleanup (#671).

- Add Zenodo configuration file.


# igraph 1.4.0

## Breaking changes

 - Breaking change: Allow change of attribute type when setting attribute for all vertices or edges; only attributes of length 1 or the length of the target set allowed (#633).


## Added

 - `tkplot()` gained a `palette` argument and it is now using the same palette as `plot()` by default, for sake of consistency.
 - `plot.igraph()` gained a `loop.size` argument that can be used to scale the common radius of the loop edges.

## Fixed

 - The default maximum number of iterations for ARPACK has been increased to 3000 to match that of the igraph C core.
 - Rare convergence problems have been corrected in `cluster_leading_eigen()`.
 - All ARPACK-based functions now respect random seeds set in R when generating a random starting vector.
 - `igraph_version()` returned an invalid value in 1.3.4, this is now corrected.
 - The value of `par(xpd=...)` is now restored after plotting a graph.
 - Fixed a bug in `as.dendrogram.communities()` for large dendrograms, thanks
   to @pkharchenko (see PR #292).
 - Fixed two bugs in `graph_from_incidence_matrix()` that prevented the creation of directed graphs with `mode="all"` from dense or sparse matrices.
 - `dfs()` accidentally returned zero-based root vertex indices in the result object; this is now fixed and the indices are now 1-based.
 - `as_graphnel()` does not duplicate loop edges any more.
 - `convex_hull()` now returns the vertices of the convex hull with 1-based indexing.
 - Some `rgl.*()` function calls in the codebase were replaced with equivalent `*3d()` function calls in preparation for upcoming deprecations in `rgl` (see PR #619)
 - `plot.igraph()` does not use the `frame=...` partial argument any more when calling `plot.default()`. The default `NULL` value of `frame.plot` is now also handled correctly.
 - `hub_score()` and `authority_score()` considered self-loops only once on the diagonal of the adjacency matrix of undirected graphs, thus the result was not identical to that obtained by `eigen_centrality()` on loopy undirected graphs. This is now corrected.
 - `distances()` no longer ignores the `mode` parameter when `algorithm='johnson'`.

## Deprecated

 - `automorphisms()` was renamed to `count_automorphisms()`; the old name is still available, but it is deprecated.

## Other

 - Documentation improvements.
 - The Github repository was now moved to a single-branch setup where the package can be built from the `main` branch directly.
 - Added igraph extended tutorial as an R vignette (#587).
 - igraph now has a homepage based on `pkgdown` thanks to @maelle (see #645). This will eventually become the official homepage.

# igraph 1.3.5

Added:

- `mark.groups=...` argument of `plot.igraph()` now accepts `communities`
  objects

Fixed:

- Negative degree exponents are not allowed any more in `sample_pa()` and
  `sample_aging_pa()`.

- Package updated to be compatible with Matrix 1.5.

Other:

 - Documentation improvements and fixes.

# igraph 1.3.4

Added:

- `sample_asym_pref()` now returns the generated types of the vertices in the
  vertex attributes named `outtype` and `intype`.

Fixed:

- `layout_nicely()` does not recurse infinitely any more if it is assigned to
  the `layout` attribute of a graph

- `layout_nicely()` now ignores edge weights when there are non-positive
  edge weights. This is needed because igraph 1.3.3 started validating edge
  weights in `layout_with_fr()` and `layout_with_drl()`, resulting in
  errors when `layout_nicely()` was used on weighted graphs with negative
  weights. Since `layout_nicely()` is the default layout algorithm for
  `plot()`, most users were not even aware that they were using the FR or
  DrL layouts behind the scenes. Now the policy is that `layout_nicely()`
  attempts to get the job done without errors if possible, even if that means
  that edge weights must be ignored. A warning is printed if this is the case.

# igraph 1.3.3

Added:

- `reverse_edges()` reverses specific or all edges in a graph.

- Single-bracket indexing of `V()` and `E()` resolves attribute names in the
  indexing expressions by default (for instance, `E(g)[weight > x]` matches
  edges with a weight larger than a threshold). This can be problematic if the
  attribute masks one of the variables in the local evaluation context.
  We now have a pronoun called `.env` (similarly to `rlang::.env`) that
  allows you to force attribute name lookup to the calling environment. For
  sake of completeness, we also provide `.data` (similarly to `rlang::.data`)
  to force attribute name lookup to the vertex / edge attributes only. These
  pronouns are automatically injected into the environment where the indexing
  expression is evaluated.

Deprecated:

- Names of functions that can be used inside a `V()` or `E()` indexing start
  with a dot since igraph 1.1.1; however, the old dotless names did not print
  a deprecation warning so this may have gone unnoticed for years. We are
  introducting a deprecation warning for `nei()`, `innei()`, `outnei()`,
  `inc()`, `from()` and `to()` inside single-bracket indexing of vertex and
  edge sequences and will remove the old variants soon.

# igraph 1.3.2

The C core is updated to 0.9.9, fixing a range of bugs.

Fixed:

- The length of size-zero `communities` objects is now reported correctly.
- `layout_with_kk()` would fail to produce reasonable results with the default initial
  coordinates. This has been corrected, however, this function no longer produces
  precisely the same output for a given graph as before. To restore the previous
  behaviour, use `layout_with_kk(g, coord=layout_in_circle(g))` in 2D or
  `layout_with_kk(g, dim=3, coord=layout_on_sphere(g))` in 3D.
- Indexing an `igraph.vs` object with `v[x, na_ok=T]` now correctly handles the
  `na_ok` argument in all cases; previous versions ignored it when `x` was
  a single number.

Other:

 - Documentation improvements and fixes.
jperkin pushed a commit that referenced this issue May 2, 2023
2.5.9 (2023-04-02)

* Add license file. Fixes #228, #282.
* Actions - remove Ubuntu-16.04, macOS to 11, add Ubuntu-22.04, Win 2022
* Fix test workflow.
* Fix java 8 compatibility. (#292)
* Rework (VALUE* args) -> (VALUE arg) invalid function type. Fixes #287.
* Remove coveralls.
* Fix order of OpenSSL require.
jperkin pushed a commit that referenced this issue May 5, 2023
Changelog:

v1.0.27 -- 24 Apr 2023
----------------------
Note: This release is not binary compatible with previous releases. It is source
 compatible.

- BookmarkStorage: allow empty bookmark names (as per spec) (fixes #300)
- MUCRoom: added send( message, subject, StanzaExtensionList ) (fixes #301)



v1.0.26 -- 19 Mar 2023
----------------------
- MUCRoom: init m_session (fixes #293)
- TLSOpenSSL: use system certificates for verification (fixes #292)
- ConnectionTCPServer: compilation fix for musl (fixes #291)



v1.0.25 -- 16 Mar 2023
----------------------
- compile fixes for modern compilers
- Tag: expose internal NodeList for optional XHTML-IM rendering without external
 parser; compile with --enable-xhtmlim (fixes #297)
- enabled/fixed support for TLS 1.3



v1.0.24 -- 14 Jul 2020
----------------------
Note: This release is not binary compatible with previous releases. It is source
 compatible.

- Tag: fixed XML namespace for attribute with empty namespace (fixes #278) (than
ks to drizt72)
- PubSub::Event: add simple ctor (thanks to Daniel Kraft)
- PubSub::Manager: fixed subscription error case handling (thanks to Daniel Kraf
t)
- PubSub: fixed support for instant nodes
- RosterManager: fixed behavior if subscription attribute is absent in roster it
em



v1.0.23 -- 08 Dec 2019
----------------------
- fixed a memory leak in dns.cpp (thanks to Daniel Kraft)
- fixed session management/stream resumption (thanks to Michel Vedrine, François
 Ferreira-de-Sousa, Frédéric Rossi)
- MUCRoom::MUCUser: include reason if set
- ClientBase: fix honorThreadID (first noticed by Erik Johansson in 2010)
- TLSGnuTLS: disabled TLS 1.3 for now, as there are connection issues with it



v1.0.22 -- 04 Jan 2019
----------------------
- TLSOpenSSLBase: conditionally compile in TLS compression support only if available in OpenSSL (fixes #276) (thanks to Dominyk Tiller)
- TLSGNUTLS*Anon: fix GnuTLS test by explicitely requesting ANON key exchange algorithms (fixes #279) (thanks to elexis)
- TLSGNUTLSClient: fix server cert validation by adding gnutls_certificate_set_x509_system_trust() (fixes #280) (thanks to elexis)
- DNS: fix compilation on OpenBSD sparc64 (fixes #281) (thanks to Anthony Anjbe)
- Enable getaddrinfo by default (fixes #282) (thanks to Filip Moc)



v1.0.21 -- 12 Jun 2018
----------------------
- InBandBytestream: error handling corrected
- doc fix: CertInfo::date_from/to set correctly when using OpenSSL



v1.0.20 -- 26 Feb 2017
----------------------
Note: This release is not binary compatible with previous releases. It is source compatible.

- BytestreamDataHandler: added callback for acknowledged packets
- ConnectionTCPClient: compile fix for Win32 (broken in 1.0.19)
- ConnectionTCPClient: no-block fix
- use ws2_32.lib instead of ws_32.lib on Win32



v1.0.19 -- 21 Feb 2017
----------------------
Note: This release is not binary compatible with previous releases. It is source compatible.

- ConnectionTCPServer: cleanup
- lots of compile-time warnings removed
- TLSOpenSSL: made it speak TLSv1.1 and 1.2 again (thanks to Nicolas Belouin)
- added Client State Indication (XEP-0352)
- CertInfo struct: fixed protocol version when using OpenSSL
- TLSOpenSSL: fixed compilation with OpenSSL 1.1.0
- Registration: added Resource Constraint error condition (thanks to elexis1987) (#267)
- ConnectionTCP: fixed some blocking (thanks to Marco Ciprietti)



v1.0.18 -- 10 Nov 2016
----------------------
- TLSOpenSSL: fixed wildcard certificate support (#262)
- Pubsub::Event: fixed potential NULL dereference (#257)
- ConnectionTCPServer: fixed listening on local socket
- Adhoc: fixed memory leak (thanks to Erik Horemans)
- documentation fixes (Adhoc::Plugin, StanzaExtension)
- ConnectionTLS: delete old connection in setConnectionImpl() (thanks to Erik Horemans) and clarify this in the documentation
- Tag: Android compilation fix (thanks to Erik Horemans)
- ConnectionSOCKS5Proxy: improved compatibility (thanks to Erik Horemans)
- util: Android compilation fix (thanks to Erik Horemans)
- Client, ClientBase: avoid 'from' attribute when doing resource binding (#265)
- MUCRoom: allow empty message body if extension is present (#264) (thanks to Tom Quackenbush)
- ConnectionBOSH: initialize 'hold' to 1 to improve compatibility (#238)
- ConnectionTCPServer: actually accept incoming connections
jperkin pushed a commit that referenced this issue Jun 8, 2023
Fix #292: disuse HTTPResponse.strict by @dairiki in #301
fix: double reading error on urllib3 2.0 by @frostming in #296
Packaging the tests, or not by @dimbleby in #287
Add type annotations by @dimbleby in #279
Use Python's unittest mock by @jelly in #289
feat: remove compat module by @frostming in #303
tests: Support python 3.11 by @danigm in #304
fix: use pytest native method name by @frostming in #305
Remove use of utcnow by @pganssle in #290
Release 0.13.0 by @frostming in #307
jperkin pushed a commit that referenced this issue Jun 17, 2023
# forcats 1.0.0

## New features

* New `fct_na_value_to_level()` and `fct_na_level_to_value()` to convert
  NA values to NA levels and vice versa (#337).

## Minor improvement and bug fixes

* All functions now validate their inputs, giving more useful errors if you
  accidentally misspecify an input.

* `fct_collapse()` can now use `other_level = NA` (#291).

* `fct_count()` works with factors that contain `NA`s in levels.

* `fct_explicit_na()` is deprecated in favour of `fct_na_value_to_level()`.

* `fct_expand()` gains an `after` argument so that you can choose where
  the new levels are placed (#138).

* `fct_infreq()` gains the ability to weight by another variable using the `w`
  argument (#261).

* `fct_inorder()` now works when not all levels appear in the data (#262).

* `fct_lump_prop()` and friends now work correctly if you supply weights
  and have empty levels (#292).

* `fct_lump_n()` and `fct_lump_prop()` will now create an "Other" level even
  if it only consists of a single level. This makes them consistent with the
  other `fct_lump_*` functions (#274).

* `fct_other()` no longer generates a warning if no levels are replaced with
  other (#265).

* `fct_relevel()`, `fct_cross()`, and `fct_expand()` now error if you name the
  arguments in `...` since those names are ignored and your code probably
  doesn't do what you think it does (#319).

* `fct_reorder()` and `fct_reorder2()` now remove `NA` values in `.x` with a
  warning (like  `ggplot2::geom_point()` and friends). You can suppress the
  warning by setting `.na_rm = TRUE` (#315).

* `fct_reorder()` and `fct_reorder2()` gain a new `.default` argument that
  controls the placement of  empty levels (including levels that might become
  empty after removing missing values in `.x`) (#266).

* `fct_unique()` now captures implicit missing values if present (#293).


# forcats 0.5.2

* New `fct()` which works like `factor()` but errors if values of `x`
  are not included in the levels specification (#299)

* `first2()` and `last2()` now ignore missing values in both `x` and `y` (#303).

* Error messages are more informative.
jperkin pushed a commit that referenced this issue Jun 28, 2023
Upstream changes:
1.40 - 30 April 2023
 - Note usage with dzil (Steve Rogerson) (GH-319)
 - Fix html_basic report (jkahrman) (GH-318)
 - Use CPAN::Meta (Slaven Rezić) (GH-314)
 - Make non-interactive output less noisy (jkahrman) (GH-312)
 - Avoid infinite recursion in Type::Tiny and other places (Ed J) (GH-307)
 - Add ignore_covered_err option (Tina Müller) (GH-323)
 - Handle empty hashes and arrays on condition RHS in 5.37.6 and later

1.39 - 29 April 2023
 - Remove dependency on B::Debug (Jim Keenan) (GH-289)
 - Raise minimum version to 5.12
 - Correct spelling of Pod::Coverage trustme parameter (Oliver Youle) (GH-302)
 - Fix annotations in html_basic report (Opera Wang) (GH-310)

1.38 - 5 June 2022
 - Improve documentation

1.37 - 5 June 2022
 - Fix Subroutine module docs (bkerin) (GH-262)
 - Use github actions instead of travis (Zakariyya Mughal) (GH-291)
 - Improve mkdir error messages (Felipe Gasper) (GH-296)
 - Remove asterisk from gcov count (Zakariyya Mughal) (GH-294)
 - Test against 5.36.0
 - Avoid warnings from check_files (Nicolas R) (GH-292)
 - Support __SUB__ (Graham Knop) (GH-290, GH-243, GH-285)
 - Support uncoverable count ranges (Tina Müller) (GH-288)
 - Improve gcov support for XS code (Ed J) (GH-280)
 - Allow overriding of HTML code highlighting (Jesús Alonso Abad) (GH-271)
 - Improve contributing docs
jperkin pushed a commit that referenced this issue Aug 8, 2023
1.8.18 (2023-07-17)

Merged pull requests:

* (PA-5641) Add release job via PR #321 #322 #323 (tvpartytonight)
* Remove old Ruby logic from Gemfile #320 (mhashizume)
* (PA-4639) Migrate away from AppVeyor #319 (mhashizume)
* Don't require git #318 (joshcooper)
* (PA-5641) Update rspec tests with modern Ruby #317 (mhashizume)
* Update to Mend #311 (cthorn42)

1.8.16 (2022-10-03)

Merged pull requests:

* (PA-4558) Replaces Travis CI with GitHub Actions #298 (mhashizume)
* Add snyk monitoring #297 (joshcooper)
* (packaging) Sets version to 1.8.15 for release #296 (mhashizume)
* Update CODEOWNERS #295 (binford2k)
* Add array support to autorequire variable expansion #294 (seanmil)
* (GH-231) Add default to transport attributes #293 (seanmil)
* Support ensure parameter with Optional data type #292 (seanmil)
* Only ship needed files #289 (ekohl)
jperkin pushed a commit that referenced this issue Aug 13, 2023
[1.2.2] - 2023-08-08

- Added option to set different shades of color gradients for each of the
  available themes
- Added new application themes: Dracula, Gruvbox, Nord, and Solarized
- Other aesthetic improvements (see #119 for more info):
    - redesigned page tabs
    - highlighted headings with different colors
    - simplified scrollables style
    - improvements to Deep Sea and Mon Amour color palettes
- Added Finnish translation 🇫🇮
- Added support for --help and --version command line arguments
- Migrated to Iced 0.10, that is now able to select the graphical renderer at
  runtime: a fallback one (tiny-skia) will be used in case the default one
  (wgpu) crashes
- Added app id in order to correctly show the icon and app name on Linux
  Wayland (fixes #292)
- Restructured issue templates to let users open issues in a more efficient and
  effective way
- Updated French translation to v1.2
- Color palettes in settings page are now built as Rule widgets, without
  involving the use of external SVGs anymore
- Fixed alt+tab shortcut  — fixes #262
- Fixed problem that didn't allow opening links and the report file on
  operating systems different from Windows, macOS, and Linux
- Use scrollable to make active filters visible when the selected adapter name
  is long (overview page)
- Ensure no colored pixel is shown if the respective packets or bytes number
  is zero
- Minor fix to Chinese translation
jperkin pushed a commit that referenced this issue Oct 1, 2023
1.3.1 - 2023-09-30
⛰️ Features
 - (args) Support tilde for options (#266) - (8698bc2)
 - (ci) Distribute RPM package (#159) - (baf4da8)

🐛 Bug Fixes
 - (ci) Update cargo-tarpaulin arguments - (83a0371)

🚜 Refactor
 - (ci) Simplify cargo-tarpaulin installation - (95f8d53)

📚 Documentation
 - (installation) Update instructions for Arch Linux - (291a928)
 - (installation) Add instructions for Alpine Linux - (3199bba)
 - (license) Re-license under the MIT + Apache 2.0 license (#303) - (cd56344)
 - Update Tera links to the new URL (#272) - (890de00)

⚙️ Miscellaneous Tasks
 - Remove GPL code (#293) - (e3606ba)

◀️ Revert
 - (args) Update clap and clap extras to v4 (#137) (#292) - (fb4c733)
jperkin pushed a commit that referenced this issue Jan 25, 2024
# cpp11 0.4.7

* Internal changes requested by CRAN to fix invalid format string tokens
  (@paleolimbot, #345).

# cpp11 0.4.6

* R >=3.5.0 is now required to use cpp11. This is in line with (and even goes
  beyond) the tidyverse standard of supporting the previous 5 minor releases of
  R. It also ensures that `R_UnwindProtect()` is available to avoid C++ memory
  leaks (#332).

* `cpp11::preserved.release_all()` has been removed. This was intended to
  support expert developers on R <3.5.0 when cpp11 used a global protection
  list. Since cpp11 no longer uses a global protection list and requires R
  >=3.5.0, it is no longer needed. As far as we can tell, no package was
  actively using this (#332).

* cpp11 now creates one protection list per compilation unit, rather than one
  global protection list shared across compilation units and across packages.
  This greatly reduces the complexity of managing the protection list state and
  should make it easier to make changes to the protection list structure in the
  future without breaking packages compiled with older versions of cpp11 (#330).

* Nested calls to `cpp11::unwind_protect()` are no longer supported or
  encouraged. Previously, this was something that could be done for performance
  improvements, but ultimately this feature has proven to cause more problems
  than it is worth and is very hard to use safely. For more information, see the
  new `vignette("FAQ")` section titled "Should I call `cpp11::unwind_protect()`
  manually?" (#327).

* The features and bug fixes from cpp11 0.4.4 have been added back in.

# cpp11 0.4.5

* On 2023-07-20, cpp11 was temporarily rolled back to 0.4.3 manually by CRAN due
  to a bug in 0.4.4 which we could not immediately fix due to the cpp11
  maintainer being on vacation.

# cpp11 0.4.4

* Davis Vaughan is now the maintainer.

* `as_doubles()` and `as_integers()` now propagate missing values correctly
   (#265, #319).

* Fixed a performance issue related to nested `unwind_protect()` calls (#298).

* Minor performance improvements to the cpp11 protect code. (@kevinushey)

* `cpp_register()` gains an argument `extension=` governing the file extension of
  the `src/cpp11` file. By default it's `.cpp`, but `.cc` is now supported
  as well (#292, @MichaelChirico)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants