Just some syntax sugar for your DBIx::Class applications. This was originally
created to remove code duplication between Dancer::Plugin::DBIC and
Dancer2::Plugin::DBIC.
Test::Modern provides the best features of Test::More, Test::Fatal,
Test::Warnings, Test::API, Test::LongString, and Test::Deep, as well as
ideas from Test::Requires, Test::DescribeMe, Test::Moose, and
Test::CleanNamespaces.
Test::Modern also automatically imposes strict and warnings on your script,
and loads IO::File. (Much of the same stuff Modern::Perl does.)
Although Test::Modern is a modern testing framework, it should run fine on
pre-modern versions of Perl. It should be easy to install on Perl 5.8.9 and
above; and if you can persuade its dependencies to install (not necessarily
easy!), should be OK on anything back to Perl 5.6.1.
This simple test module checks the subroutines provided by a module. This is
useful for confirming a planned API in testing and ensuring that other
functions aren't unintentionally included via import.
Changelog:
Git v2.6.1 Release Notes
========================
Fixes since v2.6
----------------
* xdiff code we use to generate diffs is not prepared to handle
extremely large files. It uses "int" in many places, which can
overflow if we have a very large number of lines or even bytes in
our input files, for example. Cap the input size to soemwhere
around 1GB for now.
* Some protocols (like git-remote-ext) can execute arbitrary code
found in the URL. The URLs that submodules use may come from
arbitrary sources (e.g., .gitmodules files in a remote
repository), and can hurt those who blindly enable recursive
fetch. Restrict the allowed protocols to well known and safe
ones.
Git 2.6 Release Notes
=====================
Updates since v2.5
------------------
UI, Workflows & Features
* An asterisk as a substring (as opposed to the entirety) of a path
component for both side of a refspec, e.g.
"refs/heads/o*:refs/remotes/heads/i*", is now allowed.
* New userdiff pattern definition for fountain screenwriting markup
format has been added.
* "git log" and friends learned a new "--date=format:..." option to
format timestamps using system's strftime(3).
* "git fast-import" learned to respond to the get-mark command via
its cat-blob-fd interface.
* "git rebase -i" learned "drop commit-object-name subject" command
as another way to skip replaying of a commit.
* A new configuration variable can enable "--follow" automatically
when "git log" is run with one pathspec argument.
* "git status" learned to show a more detailed information regarding
the "rebase -i" session in progress.
* "git cat-file" learned "--batch-all-objects" option to enumerate all
available objects in the repository more quickly than "rev-list
--all --objects" (the output includes unreachable objects, though).
* "git fsck" learned to ignore errors on a set of known-to-be-bad
objects, and also allows the warning levels of various kinds of
non-critical breakages to be tweaked.
* "git rebase -i"'s list of todo is made configurable.
* "git send-email" now performs alias-expansion on names that are
given via --cccmd, etc.
* An environment variable GIT_REPLACE_REF_BASE tells Git to look into
refs hierarchy other than refs/replace/ for the object replacement
data.
* Allow untracked cache (experimental) to be used when sparse
checkout (experimental) is also in use.
* "git pull --rebase" has been taught to pay attention to
rebase.autostash configuration.
* The command-line completion script (in contrib/) has been updated.
* A negative !ref entry in multi-value transfer.hideRefs
configuration can be used to say "don't hide this one".
* After "git am" without "-3" stops, running "git am -3" pays attention
to "-3" only for the patch that caused the original invocation
to stop.
* When linked worktree is used, simultaneous "notes merge" instances
for the same ref in refs/notes/* are prevented from stomping on
each other.
* "git send-email" learned a new option --smtp-auth to limit the SMTP
AUTH mechanisms to be used to a subset of what the system library
supports.
* A new configuration variable http.sslVersion can be used to specify
what specific version of SSL/TLS to use to make a connection.
* "git notes merge" can be told with "--strategy=<how>" option how to
automatically handle conflicts; this can now be configured by
setting notes.mergeStrategy configuration variable.
* "git log --cc" did not show any patch, even though most of the time
the user meant "git log --cc -p -m" to see patch output for commits
with a single parent, and combined diff for merge commits. The
command is taught to DWIM "--cc" (without "--raw" and other forms
of output specification) to "--cc -p -m".
* "git config --list" output was hard to parse when values consist of
multiple lines. "--name-only" option is added to help this.
* A handful of usability & cosmetic fixes to gitk and l10n updates.
* A completely empty e-mail address <> is now allowed in the authors
file used by git-svn, to match the way it accepts the output from
authors-prog.
Performance, Internal Implementation, Development Support etc.
* In preparation for allowing different "backends" to store the refs
in a way different from the traditional "one ref per file in
$GIT_DIR or in a $GIT_DIR/packed-refs file" filesystem storage,
direct filesystem access to ref-like things like CHERRY_PICK_HEAD
from scripts and programs has been reduced.
* Computation of untracked status indicator by bash prompt
script (in contrib/) has been optimized.
* Memory use reduction when commit-slab facility is used to annotate
sparsely (which is not recommended in the first place).
* Clean up refs API and make "git clone" less intimate with the
implementation detail.
* "git pull" was reimplemented in C.
* The packet tracing machinery allows to capture an incoming pack
data to a file for debugging.
* Move machinery to parse human-readable scaled numbers like 1k, 4M,
and 2G as an option parameter's value from pack-objects to
parse-options API, to make it available to other codepaths.
* "git verify-tag" and "git verify-commit" have been taught to share
more code, and then learned to optionally show the verification
message from the underlying GPG implementation.
* Various enhancements around "git am" reading patches generated by
foreign SCM have been made.
* Ref listing by "git branch -l" and "git tag -l" commands has
started to be rebuilt, based on the for-each-ref machinery.
* The code to perform multi-tree merges has been taught to repopulate
the cache-tree upon a successful merge into the index, so that
subsequent "diff-index --cached" (hence "status") and "write-tree"
(hence "commit") will go faster.
The same logic in "git checkout" may now be removed, but that is a
separate issue.
* Tests that assume how reflogs are represented on the filesystem too
much have been corrected.
* "git am" has been rewritten in "C".
* git_path() and mkpath() are handy helper functions but it is easy
to misuse, as the callers need to be careful to keep the number of
active results below 4. Their uses have been reduced.
* The "lockfile" API has been rebuilt on top of a new "tempfile" API.
* To prepare for allowing a different "ref" backend to be plugged in
to the system, update_ref()/delete_ref() have been taught about
ref-like things like MERGE_HEAD that are per-worktree (they will
always be written to the filesystem inside $GIT_DIR).
* The gitmodules API that is accessed from the C code learned to
cache stuff lazily.
Also contains various documentation updates and code clean-ups.
Fixes since v2.5
----------------
Unless otherwise noted, all the fixes since v2.5 in the maintenance
track are contained in this release (see the maintenance releases'
notes for details).
* "git subtree" (in contrib/) depended on "git log" output to be
stable, which was a no-no. Apply a workaround to force a
particular date format.
(merge e7aac44 da/subtree-date-confusion later to maint).
* An attempt to delete a ref by pushing into a repository whose HEAD
symbolic reference points at an unborn branch that cannot be
created due to ref D/F conflict (e.g. refs/heads/a/b exists, HEAD
points at refs/heads/a) failed.
(merge b112b14 jx/do-not-crash-receive-pack-wo-head later to maint).
* The low-level "git send-pack" did not honor 'user.signingkey'
configuration variable when sending a signed-push.
(merge d830d39 db/send-pack-user-signingkey later to maint).
* "sparse checkout" misbehaved for a path that is excluded from the
checkout when switching between branches that differ at the path.
(merge 7d78241 as/sparse-checkout-removal later to maint).
* An experimental "untracked cache" feature used uname(2) in a
slightly unportable way.
(merge 100e433 cb/uname-in-untracked later to maint).
* A "rebase" replays changes of the local branch on top of something
else, as such they are placed in stage #3 and referred to as
"theirs", while the changes in the new base, typically a foreign
work, are placed in stage #2 and referred to as "ours". Clarify
the "checkout --ours/--theirs".
(merge f303016 se/doc-checkout-ours-theirs later to maint).
* The "rev-parse --parseopt" mode parsed the option specification
and the argument hint in a strange way to allow '=' and other
special characters in the option name while forbidding them from
the argument hint. This made it impossible to define an option
like "--pair <key>=<value>" with "pair=key=value" specification,
which instead would have defined a "--pair=key <value>" option.
(merge 2d893df ib/scripted-parse-opt-better-hint-string later to maint).
* Often a fast-import stream builds a new commit on top of the
previous commit it built, and it often unconditionally emits a
"from" command to specify the first parent, which can be omitted in
such a case. This caused fast-import to forget the tree of the
previous commit and then re-read it from scratch, which was
inefficient. Optimize for this common case.
(merge 0df3245 mh/fast-import-optimize-current-from later to maint).
* Running an aliased command from a subdirectory when the .git thing
in the working tree is a gitfile pointing elsewhere did not work.
(merge d95138e nd/export-worktree later to maint).
* "Is this subdirectory a separate repository that should not be
touched?" check "git clean" was inefficient. This was replaced
with a more optimized check.
(merge fbf2fec ee/clean-remove-dirs later to maint).
* The "new-worktree-mode" hack in "checkout" that was added in
nd/multiple-work-trees topic has been removed by updating the
implementation of new "worktree add".
(merge 65f9b75 es/worktree-add-cleanup later to maint).
* Remove remaining cruft from "git checkout --to", which
transitioned to "git worktree add".
(merge 114ff88 es/worktree-add later to maint).
* An off-by-one error made "git remote" to mishandle a remote with a
single letter nickname.
(merge bc598c3 mh/get-remote-group-fix later to maint).
* "git clone $URL", when cloning from a site whose sole purpose is to
host a single repository (hence, no path after <scheme>://<site>/),
tried to use the site name as the new repository name, but did not
remove username or password when <site> part was of the form
<user>@<pass>:<host>. The code is taught to redact these.
(merge adef956 ps/guess-repo-name-at-root later to maint).
* Running tests with the "-x" option to make them verbose had some
unpleasant interactions with other features of the test suite.
(merge 9b5fe78 jk/test-with-x later to maint).
* t1509 test that requires a dedicated VM environment had some
bitrot, which has been corrected.
(merge faacc5a ps/t1509-chroot-test-fixup later to maint).
* "git pull" in recent releases of Git has a regression in the code
that allows custom path to the --upload-pack=<program>. This has
been corrected.
Note that this is irrelevant for 'master' with "git pull" rewritten
in C.
(merge 13e0e28 mm/pull-upload-pack later to maint).
* When trying to see that an object does not exist, a state errno
leaked from our "first try to open a packfile with O_NOATIME and
then if it fails retry without it" logic on a system that refuses
O_NOATIME. This confused us and caused us to die, saying that the
packfile is unreadable, when we should have just reported that the
object does not exist in that packfile to the caller.
(merge dff6f28 cb/open-noatime-clear-errno later to maint).
* The codepath to produce error messages had a hard-coded limit to
the size of the message, primarily to avoid memory allocation while
calling die().
(merge f4c3edc jk/long-error-messages later to maint).
* strbuf_read() used to have one extra iteration (and an unnecessary
strbuf_grow() of 8kB), which was eliminated.
(merge 3ebbd00 jh/strbuf-read-use-read-in-full later to maint).
* We rewrote one of the build scripts in Perl but this reimplements
in Bourne shell.
(merge 57cee8a sg/help-group later to maint).
* The experimental untracked-cache feature were buggy when paths with
a few levels of subdirectories are involved.
(merge 73f9145 dt/untracked-subdir later to maint).
* "interpret-trailers" helper mistook a single-liner log message that
has a colon as the end of existing trailer.
* The "interpret-trailers" helper mistook a multi-paragraph title of
a commit log message with a colon in it as the end of the trailer
block.
(merge 5c99995 cc/trailers-corner-case-fix later to maint).
* "git describe" without argument defaulted to describe the HEAD
commit, but "git describe --contains" didn't. Arguably, in a
repository used for active development, such defaulting would not
be very useful as the tip of branch is typically not tagged, but it
is better to be consistent.
(merge 2bd0706 sg/describe-contains later to maint).
* The client side codepaths in "git push" have been cleaned up
and the user can request to perform an optional "signed push",
i.e. sign only when the other end accepts signed push.
(merge 68c757f db/push-sign-if-asked later to maint).
* Because the configuration system does not allow "alias.0foo" and
"pager.0foo" as the configuration key, the user cannot use '0foo'
as a custom command name anyway, but "git 0foo" tried to look these
keys up and emitted useless warnings before saying '0foo is not a
git command'. These warning messages have been squelched.
(merge 9e9de18 jk/fix-alias-pager-config-key-warnings later to maint).
* "git rev-list" does not take "--notes" option, but did not complain
when one is given.
(merge 2aea7a5 jk/rev-list-has-no-notes later to maint).
* When re-priming the cache-tree opportunistically while committing
the in-core index as-is, we mistakenly invalidated the in-core
index too aggressively, causing the experimental split-index code
to unnecessarily rewrite the on-disk index file(s).
(merge 475a344 dt/commit-preserve-base-index-upon-opportunistic-cache-tree-update later to maint).
* "git archive" did not use zip64 extension when creating an archive
with more than 64k entries, which nobody should need, right ;-)?
(merge 88329ca rs/archive-zip-many later to maint).
* The code in "multiple-worktree" support that attempted to recover
from an inconsistent state updated an incorrect file.
(merge 82fde87 nd/fixup-linked-gitdir later to maint).
* On case insensitive systems, "git p4" did not work well with client
specs.
* "git init empty && git -C empty log" said "bad default revision 'HEAD'",
which was found to be a bit confusing to new users.
(merge ce11360 jk/log-missing-default-HEAD later to maint).
* Recent versions of scripted "git am" has a performance regression in
"git am --skip" codepath, which no longer exists in the built-in
version on the 'master' front. Fix the regression in the last
scripted version that appear in 2.5.x maintenance track and older.
(merge b9d6689 js/maint-am-skip-performance-regression later to maint).
* The branch descriptions that are set with "git branch --edit-description"
option were used in many places but they weren't clearly documented.
(merge 561d2b7 po/doc-branch-desc later to maint).
* Code cleanups and documentation updates.
(merge 1c601af es/doc-clean-outdated-tools later to maint).
(merge 3581304 kn/tag-doc-fix later to maint).
(merge 3a59e59 kb/i18n-doc later to maint).
(merge 45abdee sb/remove-unused-var-from-builtin-add later to maint).
(merge 14691e3 sb/parse-options-codeformat later to maint).
(merge 4a6ada3 ad/bisect-cleanup later to maint).
(merge da4c5ad ta/docfix-index-format-tech later to maint).
(merge ae25fd3 sb/check-return-from-read-ref later to maint).
(merge b3325df nd/dwim-wildcards-as-pathspecs later to maint).
(merge 7aa9b9b sg/wt-status-header-inclusion later to maint).
(merge f04c690 as/docfix-reflog-expire-unreachable later to maint).
(merge 1269847 sg/t3020-typofix later to maint).
(merge 8b54c23 jc/calloc-pathspec later to maint).
(merge a6926b8 po/po-readme later to maint).
(merge 54d160e ss/fix-config-fd-leak later to maint).
(merge b80fa84 ah/submodule-typofix-in-error later to maint).
(merge 99885bc ah/reflog-typofix-in-error later to maint).
(merge 9476c2c ah/read-tree-usage-string later to maint).
(merge b8c1d27 ah/pack-objects-usage-strings later to maint).
(merge 486e1e1 br/svn-doc-include-paths-config later to maint).
(merge 1733ed3 ee/clean-test-fixes later to maint).
(merge 5fcadc3 gb/apply-comment-typofix later to maint).
(merge b894d3e mp/t7060-diff-index-test later to maint).
(merge d238710 as/config-doc-markup-fix later to maint).
docs: remove very basic git usage info
docs: remove todo items that will never happen
output: remove empty element from xml
add touched addresses counts to xml and json reports
add xml format check
improve html output
add hint about configure options to README
man: fix character class change
gitignore: update gnulib file list
add/find/remove of C structures. Any structure having a unique,
arbitrarily-typed key member can be hashed by adding a UT_hash_handle
member to the structure and calling these macros.
From Benedek Gergely via pkgsrc-users@ with some minor changes from myself.
Changes:
2011-08-13 Oohara Yuuma <oohara@libra.interq.or.jp>
* version 1.8
* score.c: compare_entry() is now static
* configure.ac: added x before with/enable variables in case
their values begin with a special character
* player.c: removed the "not shooting" bonus debug message
because it is too noisy
* boss.c: removed debug messages in BossHit1 because they are
too noisy
2011-08-10 Oohara Yuuma <oohara@libra.interq.or.jp>
* version 1.7
* joystick.c, joystick.h: define empty functions instead of
commenting them out when the joystick support is disabled
to avoid an empty .c file
* enemyshot.c: included stdio.h and stdlib.h (for abs())
* Makefile.am: removed -Wcast-qual because the file name for
XpmReadFileToPixmap is char *, not const char *
2011-08-09 Oohara Yuuma <oohara@libra.interq.or.jp>
* version 1.6
* configure.ac: fixed so that --enable options can be disabled
correctly
* configure.ac: rewrite --with option
* configure.ac: added AC_PROG_CPP because AC_CHECK_HEADERS requires it
* configure.ac: checks the function atexit because graphic.c uses it
* configure.ac: fixed comments
* joystick.c, joystick.h: comment out the whole file if JSTK is
not defined
* Makefile.am: fixed comment so that Makefile doesn't say "process
this file with automake"
* Makefile.am, configure.ac: use the tar-ustar option of automake
instead of AMTAR = ustar in Makefile.am
* configure.ac: added the foreign option to AM_INIT_AUTOMAKE
* README: says that the joystick support is only on Linux
2009-11-08 Oohara Yuuma <oohara@libra.interq.or.jp>
* version 1.5
* game.c, xsoldier.h: make sure that an object never acts at the same
frame as it is created
* game.c: removed unnecessary variable ocheck
* version.h: updated UPDATE
2006-09-16 Oohara Yuuma <oohara@libra.interq.or.jp>
* version 1.4
* Makefile.am: minor cleanup
- uses some AM_variables
- gcc -g and the overkill warnings are now default
- set AMTAR to ustar
* Makefile.in: regenerated with automake 1.9
* configure: ./configure accepts --without-sld as well as --with-sdl
* INSTALL: fixed high score file instruction
* input.c, main.c, manage.c, xsolder.h: the SDL version respects
the TERM signal and closing the window
2002-05-26 Oohara Yuuma <oohara@libra.interq.or.jp>
* version 1.3
* configure.ac: does not stop configuring even if --with-sdl is
specified but AC_CHECK_LIB([SDL], [SDL_Init]) fails (this won't do
any harm because if there is no SDL then "make" will fail correctly)
(I don't know why AC_CHECK_LIB fails on a non-i386 architecture
(perhaps because of missing -lpthread?))
* configure.ac: regenerated
* image.c, manage.c: s/HAVE_LIBSDL_IMAGE/HAVE_LIBSDL/g
* common.c, ending.c, enemyshot.c, game.c, joystick.c, opening.c:
added some #include to avoid gcc -Wall warnings
* enemyshot.c, graphic.c, manage.c, player.c: use division instead
of shift
* score.c: fake records no longer have loop 0
* score.c: fake records are more close to the default
* image.c: fixed image loading so that xsoldier displays the correct
color on a 16-bit-per-pixel display (thanks to Stephen McCamant
<smcc@CSUA.Berkeley.EDU> for the patch)
* README: fixed typo
* image.c: SDL version sets the palette of pixmaps explicitly if
the screen is 8 bpp (without this the window is blank)
* README, extern.h, graphic.c, image.c, main.c, xsoldier.6: now
-c option does nothing because it does not work with raw X on
8 bpp screen
* image.h: SDL version uses typedef instead of #define for Image
* graphic.c, image.c, star.c: fixed memory leak (I still don't know
how to free memory allocated by getpwuid() in manage.c)
* README: fixed description (xsoldier is not first-person, "for one
player" is the right term)
* boss.c: you can't go to the next stage if the game is over
2002-04-24 Oohara Yuuma <oohara@libra.interq.or.jp>
* version 1.2
* xsoldier is ported to SDL (the Simple DirectMedia Layer library)
* extern.h: fixed a typo in comment
* callback.c, game.c, graphic.c, image.c, input.c, joystick.c,
main.c, manage.c, config.h, extern.h, graphic.h, image.h, key.h:
Added libsdl support (use --with-sdl). Note that libsdl support
uses a double-standard for coordinates to keep the 10 pixel
boundary
* enemyshot.c: enemy shots do move
* INSTALL, README: added note on SDL
* README: added a game tip
2002-04-21 Oohara Yuuma <oohara@libra.interq.or.jp>
* version 1.1
* now xsolider comes with its own font
* graphic.c: no longer use the X font (this is necessary for porting
to SDL)
* pixmap/font*.xpm: new files, provide the font
* boss.c, enemy.c: enemies appear more gracefully
* game.c: fixed counter of the number of normal enemies
* Makefile.am: "make install" does not overwrite the high score file
* INSTALL: added more info on the high score file
2002-04-21 Oohara Yuuma <oohara@libra.interq.or.jp>
* version 1.0
* now I am the official developer of xsoldier (I got a mail from
the original of xsoldier, Yuusuke HASHIMOTO <hachi@pm.highway.ne.jp>)
* player.c: weapon 1 shoots more and damages less
* game.c: set boss time to 2000 instead of 3000 if not in final stage
* boss.c: teleportation of boss 6 takes less time
* enemy.c: power-up items move faster
* boss.c: boss has a fixed (independent of loop) hit point
* game.c, player.c, player.h: you lose some of power-up items
when you are killed
* boss.c: reduced the amount of ring shots of the last boss
* boss.c: the last boss shoots a 5way shot in loop 1
* enemy.c: enemy 6 may give you an item
* player.c: set immutable time to 60 instead of 50 when
starting/restarting
* xsoldier.h: changed the argument of the srand() macro from s to x
because the word "srand" contains the letter "s"
* boss.c: homing shot of the last boss is faster
* boss.c, enemy.c, enemyshot.c: fixed window edge detection
* boss.c: fixed homing shot of boss 2
* main.c: you can enter the high score list even if you use the
-wait option as long as the wait is not greater than default
* game.c: normal enemies appear more frequently
* main.c: made sig_handle() static
* common.c, common.h, extern.h: translated all comments into English
* graphic.c, graphic.h, input.c, input.h: new files, putting all
X related stuff here
* ending.c, game.c, opening.c: no more X stuff
* boss.c: boss 2 can shoot backward in loop 2 or later
* ending.c: added my name and fixed a typo
* player.c: power-up item is O(loop), not O(loop^2)
* main.c, star.c: free what is malloc()ed --- I always put away
what I take
* main.c: removed unnecessary headers
* xsoldier.h: added #include "image.h"
* ending.c: you can skip the ending by pressing space key
* ending.c: the staff list scrolls at a fixed (independent of loop)
speed
* ending.c: added "press space key" message
* player.c: change weapon item always makes you a bit powerful
* INSTALL: added "required libraries" and fixed a typo
* xsoldier.6: fixed typo in synopsis
* README: new file, including overview, command line options, key
control and explanation of bonus
* LICENSE: added note on the files GPL and old-doc/CONDITION
2002-04-12 Oohara Yuuma <oohara@libra.interq.or.jp>
* version 0.99
* putting old documents in old-doc/
* translated all comments into English
* INSTALL: fixed the FHS way
* main.c: fixed -display and -wait option
* main.c: improved the error message for bad options
* boss.c: the last boss is a bit weaker in loop 2
* game.c, main.c, manage.c, xsoldier.h: added -nopausemessage option
* boss.c, enemy.c, game.c, player.c, score.c, star.c
s/random()/rand()/g
* main.c, xsoldier.h: s/random/rand/g, s/srandom/srand/g
* configure.ac: checks rand() instead of random()
* xsoldher.h: s/HAVE_RANDOM/HAVE_RAND/
* score.c: almost a complete rewrite
* GPL: renamed, old name is COPYING
* LICENSE: renamed, old name is CONDITION
* LICENSE: added my name
* boss.c: made boss 4 larger to prevent backstab
* boss.c: made boss 8 smaller for better collision-detection
* callback.c, game.c: draws a rectangle in the object's "real"
size if debug is enabled
* game.c: added do_actions() and collision_detection()
* enemy.c: enemy 7 escapes from the upper side of the window
(now weapon 2 is not the only way to get the perfect bonus)
* game.c: improved shoot down bonus (shoot down bonus should be large
enough so that missing a boss is a big loss, but small enough not
to trivialize non-shooting bonus)
* game.c: added shoot_down_bonus() and perfect_bonus()
* enemyshot.c: made homing missiles more stupid
* boss.c: boss 7 does escape from the window if the time is over
* manage.c: always starts a loop with a fixed level (that is, 10)
* game.c: normal enemies appear less frequently
* enemy.c: normal eneimes have a fixed hit point (independent of loop)
* main.c: set max length of player name
* manage.c: added paranoid checks to NewPlayerData()
2002-04-02 Oohara Yuuma <oohara@libra.interq.or.jp>
* version 0.98
* uses Makefile.am instead of Imakefile
* put all *.c , *.h and the manpage under RCS
* boss.c, callback.c, ending.c, enemy.c, game.c, joystick.c,
manage.c, opening.c, player.c: hacked to avoid gcc -Wall warnings
- added many #include
- removed Japanese comments which are encoded to /*
- removed unused variables
* callback.c, ending.c, game.c, image.c, joystick.c, joystick.h,
manage.c, manage.h, opening.c, score.c, sin.c, star.c, star.h:
hacked to avoid gcc overkill warnings (see Makefile.am)
- added many #include
- declared some arguments and variables as const
- converted switch statement to if-else because KeySym may
not be int
- avoid the name of a global variable in prototypes
- removed unused arguments from printf
* xsoldier.h: now defines WAIT, PIXMAP, SCORE and SCOREFILE
* manage.h: added declaration of ClearEnemyShotManage()
* player.c: initializes notShootingTime correctly (this fixes
a bug which didn't give you the non-shooting bonus unless
you shot at least once)
* xsoldier.6: renamed, old name is "xsoldier.man"
* fix/: dropped because it is not used
* version.h: now VERSION is defined in config.h
* main.c, xsoldier.6: added -maxlevel option
* game.c: removed high score display because you don't need it
during the game
* main.c: checks invalid options
* boss.c, ending.c, game.c, image.c, main.c, opening.c, player.c,
score.c: now includes config.h
* main.c: removed zero padding from the output of -score
* xsoldier.h: replaced SYSV with HAVE_RANDOM because it only
affects random()
* INSTALL: added
* image.c: fixed SplitImage debug message
* main.c, manage.c, xsoldier.h: added -loop, -state, -maxpower and
-ship options (all for debug only)
* game.c, manage.c, xsoldier.h: never show shoot down bonus
at the beginning of the game
* ending.c: fixed a typo in the ending message
* ending.c: the staff list scrolls slow in the loop 3 or later
* image.c: fixed "isn't just" debug message
* enemy.c: enemy 6 does disappear
2002-03-15 Oohara Yuuma <oohara@libra.interq.or.jp>
* version 0.97
* based on the Debian package (version 1:0.96-14)
* bug fixes:
- boss.c: fixed the size of boss 1 and 4 (you can't backstab them)
- boss.c: enables the hitmask when boss 6 reappears
- enemyshot.c: added return NoneDel; at the end of EnemyLaserAct()
(without this the function sometimes ends without calling
return, resulting a suicide of the boss of the stage 4)
- game.c: when handling Hit(), call the enemy's Hit first
(necessary because Hit() of the weapon 3 changes its Attack
and the damage is calculated in Hit() of the enemy)
- joystick.c: applied Right and Down fix (fix available at the
original author's webpage:
http://www.surfline.ne.jp/hachi/xsoldier.html)
- main.c: set the maximum number of player's object to 256
(64 seems to be insufficient for the weapon 2)
- main.c: modified sig_handle() because sigaction() expects
void f(int), not static void f(void)
- opening.c: made sure stars moves at the normal speed
* game balance tweaks:
- ending.c: staff list scrolls faster
- game.c: adjusted the interval between enemy's appearances
- game.c, opening.c: disabled zero padding of scores
- manage.c: max level (internal parameter) is now MaxLevel
(which is currently 80), not 85
- player.c, player.h: made the player's weapons much more powerful
- player.c: speed change is now 3 points/key-type instead of 5
- player.c: your weapon does not power down even if you are killed
- xsoldier.h: extend every 200,000 points instead of 100,000
* new features:
- boss.c, enemy.c: act routine improved a lot
- boss.c, game.c, manage.c, xsoldier.h: a boss escapes if
the time is up (in this case you don't get the shoot down bonus)
- callback.c, enemy.c: dealing damage to a enemy gives you a score
even if you don't destroy it
- callback.c, enemy.c, game.c, manage.c: shows the remaining hit
points of a enemy when you shoot it
- game.c: shoot down bonus is bigger in second or later loop
- game.c: perfect bonus raises the level
- game.c: added c (clear enemy shot) key (enabled only when
compiled with -DDEBUG)
- game.c, manage.c: cleans enemy's shots when you restart
- main.c: set max loop to 3 (24 stages total)
- manage.c, player.c: gives you a score as long as you don't push
the shot key
- opening.c: added short help for debug-only commands
- player.c: power up item gives you a score and raises the level
if you already have enough power up items
- player.c: the level will be lowered if you are killed
* game.c: set the score limit to 10,000,000
* manage.c: added paranoid initialization of objects
* score.c: s/strcpy()/strncpy()/g
v1.3.1
Released 27th September 2015
- Fixed various uninitialised pointer fixes
- Updated Makefile for OpenWRT and github builds
- Accept NULL as a sentence terminator with "strict=no"
- Fixed problem with non-truncation of output files
- Better guessing of UDP interface parameters
- Define ACCESSPERMS, remove redundant declarations, add header guards
- Fixed bug in source filtering
- Added option to re-enable nagle for TCP interfaces
- "-d" flag now documented with additional debugging
- Default queue sizes reduced and SNDBUF size reduced
- Added optional interface to filter rules
v1.3
Released 15th April 2015
- Added udp interface type
- Added "strict" option and potential for looser parsing constraints
- Added "preamble" option to tcp interfaces
- Added AIS coalescing
- Fixed bugs in failover specification parsing
- Fixed file output to non-pre-existing files
Special Issues:
* Due to GCC bug 53967, several key agorithms (e.g. convolution) may execute much faster (e.g. 2-3X) for x86-64 and/or when SSE is enabled for floating point math (-mfpmath=sse) if the GCC option -frename-registers is used. Default 32-bit builds do not experience the problem since they use '387 math. It is not clear in what version of GCC this problem started but it was not noticed by the developers until the GCC 4.6 timeframe. Other compilers do not suffer from this bug. Please lobby the GCC project to fix this embarrassing performance bug.
* Magick++: Any libraries or applications using Magick++ should be rebuilt in order to use this new release. Libraries and applications will be able to continue to use prior versions of Magick++ without being re-built, while benefiting from updated C libraries, provided that the system supports library versioning.
Security Fixes:
* General Coverity fixes. Some might have security consequences.
* Ghostscript options concatenation is more secure against buffer overflow.
* Windows: Built-in random number generator is now salted using CryptGenRandom(). This improves the robustness of the temporary file allocator.
Bug fixes:
* ...
This release brings:
- internal code refactoring
- partial unification of the Makefiles generated
- support for installing pkg-config files and documentation from
sub-directories
- fix for a crash on Linux
- further portability fixes
Simplify Github distfile handling.
Backport a futimes fix from upstream master, fixes build on SunOS.
Changes since 0.23.2:
- blame: guard xdiff calls for large files
- diff: don't feed large files to xdiff
- merge_file: treat large files as binary
- xdiff: convert size variables to size_t
- GITERR_CHECK_ALLOC_ADDn: multi-arg adders
This release includes a fix for CVE-2015-7384, a Denial of Service
(DoS) bug. All users of Node.js v4.x should upgrade to v4.1.2.
http:
- Fix out-of-order 'finish' event bug in pipelining that can abort
execution, fixes DoS vulnerability CVE-2015-7384
- Account for pending response data instead of just the data on
the current request to decide whether pause the socket or not
libuv:
- Upgraded from v1.7.4 to v1.7.5, see release notes for details
- A better rwlock implementation for all Windows versions
- Improved AIX support
v8:
- Upgraded from v4.5.103.33 to v4.5.103.35
- Backported f782159 from v8's upstream to help speed up Promise
introspection
- Backported c281c15 from v8's upstream to add JSTypedArray length
in post-mortem metadata
This first release in almost two years brings:
- more complete VFS abstraction
- new plug-in to manage Gtk+ bookmarks
- improved CVS, Git, Make, Preview, SVN, and Volumes plug-ins
- new plug-in to track the current selection
- new experimental plug-in for the XDG trash
- improvements to the view(1) helper binary
- re-usable library, libBrowser
- Spanish translation
- support for building outside of the source tree
- further improvements to the build system
- portability fixes (SunOS)
- support for drawing the desktop as a window
- improved support for Gtk+ 3
- introduction of a test suite
- additional bugfixes and improvements (UI, performance...)
the SDK path if we need to.
This avoids issues on Yosemite and Xcode 7, which drops support for the 10.10
SDK. Trying to determine the SDK path fails, but the failure is not cached in
the xcrun database, so each call to a compiler tool is unecessarily delayed (by
around 3 seconds on my build hosts).
For users still on Yosemite who have upgraded to Xcode 7, the solution is to
install the Command Line Tools so that /usr/include is populated and used.
-march=i586 in order to avoid on i386 the "-latomic" flag when linking
libwebkit2gtk-4.0.so.
Bump PKGREVISION.
Thanks joerg@, jperkin@ and tnn@ for various suggestions.