pkgsrc/devel/guile-git/Makefile
nikita 6eb306bfde devel/guile-git: Update to 0.3.0
Changelog:

* Changes in 0.3.0 (since 0.2.0)

** New Functionality

*** Add new (git tag) procedures

Four new procedures were added to (git tag) related to creating tags
in a git repository.

~tag-create~ and ~tag-create!~ are used to create what is known as
"annotated" tags in git which contain a creation date, creator's
signature, and a message. The ~tag-create!~ procedure can replace
existing references with the same name.

~tag-create-lightweight~ and ~tag-create-lightweight!~ are used to
create lightweight tags in git which just create a reference that
points directly to a git object.

*** Add (git signature) module

The (git signature) module adds three new procedures related to
signatures. Signatures are objects which identify a name, email, and
time that are found on many git objects. You would need to create a
signature if you want to use the ~tag-create~ procedure mentioned
above.

~signature-default~ creates a signature by looking up the ~user.name~
and ~user.email~ from the repository's configuration. It also uses the
current time.

~signature-new~ creates a signature with the passed in name, email,
time and timezone offset.

~signature-now~ creates a signature with the passed in name and
email. The time will use the current time.


*** Add (git describe) module

The (git describe) module adds several new procedures used to create
human readable names for objects based on an available references.

*** Support for Guile 3.0

Upgrade the configure script to be able to find Guile 3.0.

*** Add accessor and setter for the download tags of ~fetch-options~

The (git structs) module has added ~fetch-options-download-tags~ and
~set-fetch-options-download-tags!~ procedures for accessing and
setting the download tags field of ~fetch-options~. This field
determines the tag download policy when fetching from a remote.

*** Add ~CREDTYPE-*~ variables

(git cred) module has added several new variables which are used to
represent a bitmask for the supported credential types.

*** Add ssh authentication support

Add ssh auth support to ~clone~ and ~remote-fetch~ procedures with an
authentication method from the new module (git auth).

*** Add (git blob) module

(git blob) module adds several procedures for accessing and
interacting with blobs.

** Changes

*** ~repository-state~ return a symbols instead of an int

The ~repository-state~ procedure used to return an integer to
represent a state like none, merge, revert. It now returns the
following symbols based on the state of the repository

    - ~repository-state/none~
    - ~repository-state/merge~
    - ~repository-state/revert~
    - ~repository-state/revert-sequence~
    - ~repository-state/cherrypick~
    - ~repository-state/cherrypick-sequence~
    - ~repository-state/bisect~
    - ~repository-state/rebase~
    - ~repository-state/rebase-interactive~
    - ~repository-state/rebase-merge~
    - ~repository-state/apply-mailbox~
    - ~repository-state/apply-mailbox-or-rebase~

*** Rename ~foo-init-options~ procedures to be more idiomatic

Several procedures named like ~foo-init-options~ were renamed to be
more idiomatic like ~make-foo-options~. The previous functions are
deprecated and will be removed in a future version of Guile Git. The
functions renamed are:

    - ~clone-init-options~ renamed to ~make-clone-options~
    - ~fetch-init-options~ renamed to ~make-fetch-options~
    - ~status-init-options~ renamed to ~make-status-options~
2020-05-14 14:54:33 +00:00

26 lines
769 B
Makefile

# $NetBSD: Makefile,v 1.8 2020/05/14 14:54:33 nikita Exp $
DISTNAME= guile-git-0.3.0
CATEGORIES= devel
MASTER_SITES= https://gitlab.com/guile-git/guile-git/uploads/4c563d8e7e1ff84396abe8ca7011bcaf/
MAINTAINER= nikita@NetBSD.org
HOMEPAGE= https://gitlab.com/guile-git/guile-git/
COMMENT= Guile bindings of libgit2
LICENSE= gnu-gpl-v3
GNU_CONFIGURE= yes
GUILE_NEED_BOOTSTRAP= yes
USE_TOOLS+= pkg-config
DEPENDS+= guile-bytestructures>=1.0.5:../../devel/guile-bytestructures
CONFIGURE_ENV+= LIBGIT2_LIBDIR=${BUILDLINK_PREFIX.libgit2}/lib
INFO_FILES= YES
.include "../../lang/guile22/module.mk"
.include "../../devel/libgit2/buildlink3.mk"
.include "../../devel/pcre2/buildlink3.mk"
.include "../../security/openssl/buildlink3.mk"
.include "../../mk/bsd.pkg.mk"