8000 Please provide real distfiles for the releases · Issue #131 · libgit2/libgit2 · GitHub
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

Please provide real distfiles for the releases #131

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

Closed
bapt opened this issue Apr 12, 2011 · 2 comments
Closed

Please provide real distfiles for the releases #131

bapt opened this issue Apr 12, 2011 · 2 comments

Comments

@bapt
Copy link
bapt commented Apr 12, 2011

Hi,

In order to be able to cleanly package libgit2 for freebsd we need to get some "true distfiles".

github guys also think that the tags aren't clean distfiles:
http://support.github.com/discussions/repos/4017-tags-and-distfile-generation-issues

The main problem for us is the http redirection. With true distfiles we can access a directly link with no redirection: cloud.github.com with tags we can't plus the checksum changes each time the tarball associated to the tag is regenerated by github.

Thanks,
Bapt

@vmg
Copy link
Member
vmg commented May 2, 2011

Great suggestion! We'll start doing this for the next minor release. Cheers!

vmg added a commit that referenced this issue May 10, 2011
Hey, welcome to yet another minor libgit2 release. Sorry for the delay from
the last one. As you'll see the changelog is quite extensive -- hopefully from
now on we'll stick to more frequent minor releases.

Together with the usual bugfixes, here's a list of the new key features:

* Distfiles

	This version comes with proper distfiles as requested in #131. These are
	available in the Downloads section of the GitHub project.

* Error handling

	A new error handling API has been implemented that allows the library to
	return detailed error messages together with the generic error codes. We
	hope this will be a great when wrapping and integrating the library

	New external method to get the last detailed error message:

		+ git_lasterror(void)

	The old `git_strerror` still exists, but will be deprecated in the future
	as soon as every method in the library returns a valid error message.

	The task of writing error messages for every method is quite daunting.
	We appreciate pull requests with more error messages. Check the new error
	handling documentation in the following commit:

	fa59f18

* Redis backend

	We now have a Redis backend courtesy of Dmitry Kovega. Just like the
	SQLite backend, this allows the library to store Git objects in a Redis
	key-value store.

	The backend requires the `hiredis` library. Use `--with-redis` when
	building libgit2 to enable building the backend if `hiredis` is available.

* Commits

	New methods to access tree and parent data as a raw OID value
	instead of forcing a repository lookup

		+ git_commit_tree_oid(git_commit *commit)
		+ git_commit_parent_oid(git_commit *commit, unsigned int n)

* Index

	The `git_index_add` method has been split into 4 different calls
	which allow for appending and replacing in-memory entries and on-disk
	files to the index.

		+ git_index_add(git_index *index, const char *path, int stage)
		+ git_index_add2(git_index *index, const git_index_entry *source_entry)
		+ git_index_append(git_index *index, const char *path, int stage)
		+ git_index_append2(git_index *index, const git_index_entry *source_entry)

	Index entries can now also be efficiently removed from the index:

		+ git_index_remove(git_index *index, int position)

* References

	Methods to force the creation and renaming of references, even if those already
	exist on the repository.

		+ git_reference_create_symbolic_f(git_reference **ref_out, git_repository *repo,
				const char *name, const char *target)
		+ git_reference_create_oid_f(git_reference **ref_out, git_repository *repo,
				const char *name, const git_oid *id)
		+ git_reference_rename_f(git_reference *ref, const char *new_name)

* Repository

	New auxiliary methods with repository information

		+ git_repository_is_empty(git_repository *repo)
		+ git_repository_path(git_repository *repo)
		+ git_repository_workdir(git_repository *repo)

* Signatures

	New method to create a signature with the current date/time

		+ git_signature_now(const char *name, const char *email)

* Tags

	Several wrappers to automate tag creation.

		+ git_tag_create_frombuffer(git_oid *oid, git_repository *repo,
				const char *buffer)
		+ git_tag_create_f(git_oid *oid, git_repository *repo,
				const char *tag_name, const git_oid *target,
				git_otype target_type, const git_signature *tagger,
				const char *message);
		+ git_tag_create_fo(git_oid *oid, git_repository *repo,
				const char *tag_name, const git_object *target,
				const git_signature *tagger, co
8000
nst char *message)

	New functionality to delete and list tags in a repository without
	having to resort to the `references` API.

		+ git_tag_delete(git_repository *repo, const char *tag_name)

		+ git_tag_list(git_strarray *tag_names, git_repository *repo)

* Trees

	All instances of `git_tree_entry` are now returned and handled
	as constant, to remind the user that these opaque types are not
	supposed to be manually free'd.

	The `git_tree_entry_2object` method now takes a `git_repository`
	argument which defines in which repository the resolved object
	should be looked up. (It is expected to be the same repository
	that contains the parent `git_tree` for the entry).

		+ git_tree_entry_2object(git_object **object_out, git_repository *repo,
				const git_tree_entry *entry)

	New opaque type `git_treebuilder` with functionality to create and
	write trees on memory

		+ git_treebuilder_create(git_treebuilder **builder_p, const git_tree *source)
		+ git_treebuilder_clear(git_treebuilder *bld)
		+ git_treebuilder_free(git_treebuilder *bld)
		+ git_treebuilder_get(git_treebuilder *bld, const char *filename)
		+ git_treebuilder_insert(git_tree_entry **entry_out, git_treebuilder *bld,
				const char *filename, const git_oid *id, unsigned int attributes)
		+ git_treebuilder_remove(git_treebuilder *bld, const char *filename)
		+ git_treebuilder_filter(git_treebuilder *bld,
				int (*filter)(const git_tree_entry *, void *), void *payload)
		+ git_treebuilder_write(git_oid *oid, git_repository *repo, git_treebuilder *bld)

	New method to write an index file as a tree to the ODB.

		+ git_tree_create_fromindex(git_oid *oid, git_index *index)

Thanks to the usual guility parties that make this this happen, to
all the new contributors who are starting to submit pull requests, and
to the bindings developers who have to keep up with our shit.

Feedback and questions welcome on libgit2@librelist.org

Signed-off-by: Vicent Marti <tanoku@gmail.com>
@bapt
Copy link
Author
bapt commented May 27, 2011

Thanks, it is now packaged in FreeBSD.

@bapt bapt closed this as completed May 27, 2011
phatblat pushed a commit to phatblat/libgit2 that referenced this issue Sep 13, 2014
Hey, welcome to yet another minor libgit2 release. Sorry for the delay from
the last one. As you'll see the changelog is quite extensive -- hopefully from
now on we'll stick to more frequent minor releases.

Together with the usual bugfixes, here's a list of the new key features:

* Distfiles

	This version comes with proper distfiles as requested in libgit2#131. These are
	available in the Downloads section of the GitHub project.

* Error handling

	A new error handling API has been implemented that allows the library to
	return detailed error messages together with the generic error codes. We
	hope this will be a great when wrapping and integrating the library

	New external method to get the last detailed error message:

		+ git_lasterror(void)

	The old `git_strerror` still exists, but will be deprecated in the future
	as soon as every method in the library returns a valid error message.

	The task of writing error messages for every method is quite daunting.
	We appreciate pull requests with more error messages. Check the new error
	handling documentation in the following commit:

	libgit2@fa59f18

* Redis backend

	We now have a Redis backend courtesy of Dmitry Kovega. Just like the
	SQLite backend, this allows the library to store Git objects in a Redis
	key-value store.

	The backend requires the `hiredis` library. Use `--with-redis` when
	building libgit2 to enable building the backend if `hiredis` is available.

* Commits

	New methods to access tree and parent data as a raw OID value
	instead of forcing a repository lookup

		+ git_commit_tree_oid(git_commit *commit)
		+ git_commit_parent_oid(git_commit *commit, unsigned int n)

* Index

	The `git_index_add` method has been split into 4 different calls
	which allow for appending and replacing in-memory entries and on-disk
	files to the index.

		+ git_index_add(git_index *index, const char *path, int stage)
		+ git_index_add2(git_index *index, const git_index_entry *source_entry)
		+ git_index_append(git_index *index, const char *path, int stage)
		+ git_index_append2(git_index *index, const git_index_entry *source_entry)

	Index entries can now also be efficiently removed from the index:

		+ git_index_remove(git_index *index, int position)

* References

	Methods to force the creation and renaming of references, even if those already
	exist on the repository.

		+ git_reference_create_symbolic_f(git_reference **ref_out, git_repository *repo,
				const char *name, const char *target)
		+ git_reference_create_oid_f(git_reference **ref_out, git_repository *repo,
				const char *name, const git_oid *id)
		+ git_reference_rename_f(git_reference *ref, const char *new_name)

* Repository

	New auxiliary methods with repository information

		+ git_repository_is_empty(git_repository *repo)
		+ git_repository_path(git_repository *repo)
		+ git_repository_workdir(git_repository *repo)

* Signatures

	New method to create a signature with the current date/time

		+ git_signature_now(const char *name, const char *email)

* Tags

	Several wrappers to automate tag creation.

		+ git_tag_create_frombuffer(git_oid *oid, git_repository *repo,
				const char *buffer)
		+ git_tag_create_f(git_oid *oid, git_repository *repo,
				const char *tag_name, const git_oid *target,
				git_otype target_type, const git_signature *tagger,
				const char *message);
		+ git_tag_create_fo(git_oid *oid, git_repository *repo,
				const char *tag_name, const git_object *target,
				const git_signature *tagger, const char *message)

	New functionality to delete and list tags in a repository without
	having to resort to the `references` API.

		+ git_tag_delete(git_repository *repo, const char *tag_name)

		+ git_tag_list(git_strarray *tag_names, git_repository *repo)

* Trees

	All instances of `git_tree_entry` are now returned and handled
	as constant, to remind the user that these opaque types are not
	supposed to be manually free'd.

	The `git_tree_entry_2object` method now takes a `git_repository`
	argument which defines in which repository the resolved object
	should be looked up. (It is expected to be the same repository
	that contains the parent `git_tree` for the entry).

		+ git_tree_entry_2object(git_object **object_out, git_repository *repo,
				const git_tree_entry *entry)

	New opaque type `git_treebuilder` with functionality to create and
	write trees on memory

		+ git_treebuilder_create(git_treebuilder **builder_p, const git_tree *source)
		+ git_treebuilder_clear(git_treebuilder *bld)
		+ git_treebuilder_free(git_treebuilder *bld)
		+ git_treebuilder_get(git_treebuilder *bld, const char *filename)
		+ git_treebuilder_insert(git_tree_entry **entry_out, git_treebuilder *bld,
				const char *filename, const git_oid *id, unsigned int attributes)
		+ git_treebuilder_remove(git_treebuilder *bld, const char *filename)
		+ git_treebuilder_filter(git_treebuilder *bld,
				int (*filter)(const git_tree_entry *, void *), void *payload)
		+ git_treebuilder_write(git_oid *oid, git_repository *repo, git_treebuilder *bld)

	New method to write an index file as a tree to the ODB.

		+ git_tree_create_fromindex(git_oid *oid, git_index *index)

Thanks to the usual guility parties that make this this happen, to
all the new contributors who are starting to submit pull requests, and
to the bindings developers who have to keep up with our shit.

Feedback and questions welcome on libgit2@librelist.org

Signed-off-by: Vicent Marti <tanoku@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
< 33D2 div class="js-socket-channel js-updatable-content" data-channel="eyJjIjoiaXNzdWU6NzU4OTgxIiwidCI6MTc0NjkxMDI1Nn0=--8fb8a0911bb30c935d32c2adfc96188c95f07529149a20c1ea6dfc7bd093234b" data-gid="MDU6SXNzdWU3NTg5ODE=" data-url="/libgit2/libgit2/issues/closing_references/partials/sidebar?source_id=758981&source_type=ISSUE" data-channel-event-name="issue_references_updated" >
Development

No branches or pull requests

2 participants
0