summaryrefslogtreecommitdiff
path: root/tool/file2lastrev.rb
AgeCommit message (Collapse)Author
2022-12-12Avoid overwriting revision.h when .git doesn't exist (#6915)Takashi Kokubun
* Avoid overwriting revision.h when .git doesn't exist * Overwrite revision.h if it's blank Notes: Merged-By: k0kubun <takashikkbn@gmail.com>
2022-11-02file2lastrev.rb: changed revision may be `nil` [ci skip]Nobuyoshi Nakada
When `--suppress_not_found` option is given, no revision information is available. And remove extraneous newline, when result is empty or ends with a newline.
2022-11-02file2lastrev.rb: try to overwrite the found revision.h as beforeNobuyoshi Nakada
2022-11-02file2lastrev.rb: separate options for `Output` and `VPath`Nobuyoshi Nakada
So the `--srcdir` option in this file can override the same option in `VPath`.
2022-11-01file2lastrev.rb: use output.rb for the optionsNobuyoshi Nakada
2022-11-01file2lastrev.rb: rename output as formatNobuyoshi Nakada
Also: - format -> time_format - output -> formatter
2022-10-12file2lastrev.rb: Refactor VCS directory searchNobuyoshi Nakada
Search VCS directory after other options are in effective, i.e., `--srcdir=nonexitent --suppress_not_found` options, as well as the reverse order case, should print the current date only and exit successfully.
2022-09-30Introduce `VCS::Null` for fallbackNobuyoshi Nakada
Notes: Merged: https://github.com/ruby/ruby/pull/6473
2022-09-17Fallback to VCS.release_date on VCS::NotFoundErrorTakashi Kokubun
when -q is given. One of the RubyCI servers, freebsd12, had a broken git environment: ``` $ git show fatal: detected dubious ownership in repository at '/usr/home/chkbuild/chkbuild/tmp/build/20220917T123002Z/ruby' To add an exception for this directory, call: git config --global --add safe.directory /usr/home/chkbuild/chkbuild/tmp/build/20220917T123002Z/ruby ``` tool/lib/vcs.rb doesn't work normally for that server. Even for such cases, we'd like to generate a usable revision.h. So this patch lets revision.h fallback to default VCS.release_date when VCS::NotFoundError is raised.
2022-09-17Auto-generate the release date on version.h from git CommitDate (#6382)Takashi Kokubun
* Auto-generate the release date on version.h from git CommitDate * Generate revision.h on mswin Notes: Merged-By: k0kubun <takashikkbn@gmail.com>
2022-09-01VCS#revision_header: Make arguments optionalNobuyoshi Nakada
2022-09-01Extract `VCS#revision_header`Nobuyoshi Nakada
2019-09-07Exit gently if no VCS found but --suppress_not_found is givenNobuyoshi Nakada
2019-09-07Removed no longer used variableNobuyoshi Nakada
2019-09-07Assign to vcs in new_vcs block not to use rescue resultNobuyoshi Nakada
2019-09-07Fixed wrong method at 71f7b0421acNobuyoshi Nakada
2019-09-07Refined file2lastrev.rb optionsNobuyoshi Nakada
* check --srcdir if given twice or more * falls back to the current working directory if no --srcdir option is given. * define common VCS options.
2019-07-15Put vcs .rb to under the lib direcotory.Hiroshi SHIBATA
Because it's the common library for tool files.
2019-07-07Git branch name can contain `#{}` tooNobuyoshi Nakada
2019-07-07Unescape #{} in the last commit titleNobuyoshi Nakada
Get rid of unknown escape sequence warning, as `#` is not a special character in C. ``` version.c:126:26: warning: unknown escape sequence '\#' [-Wunknown-escape-sequence] fputs("last_commit=" RUBY_LAST_COMMIT_TITLE, stdout); ^~~~~~~~~~~~~~~~~~~~~~ revision.h:4:42: note: expanded from macro 'RUBY_LAST_COMMIT_TITLE' ^~ ```
2019-06-21Revert RUBY_RELEASE_DATE to date onlyNobuyoshi Nakada
2019-06-10Use UTC for file2lastrev timezoneTakashi Kokubun
02155da7bad37bd1c8adadd486d2d16eac7af43b got a claim about sacrificing ability to compare arbitrary `RUBY_DESCRIPTION`s without converting timezones. Because most of the people would be familiar with timezone conversion with UTC but it'd be harder when it comes to JST, this commit just changes the timezone in f42588f754d5885ec30631e5008c383f3ef905d8 to UTC. Another bonus in using UTC is that we can use a shorter variant of ISO 8601 format like "2019-06-10T14:26:24Z" (the last Z part).
2019-06-10Make file2lastrev timezone consistent with git logTakashi Kokubun
Using the same timezone for all commits is convenient when just looking dates in RUBY_DESCRIPTION, but usually we also check `git log` when we're interested in the order of commits. `git log` shows times in committer's timezone and forcing RUBY_RELEASE_DATE to JST makes it harder to find a corresponding commit from `git log`. Because this label is only used in development, I believe there's no strict requirement to use traditional timezone for release here. Also when building Ruby after committing from a non-JST timezone, I'd be surprised to see a strange time (in a different timezone) for my very new commit in `ruby -v`.
2019-06-08Make RUBY_RELEASE_DATE full on developmentNobuyoshi Nakada
I cannot tell the order just by commit hashes.
2019-06-03Default GIT external encoding to UTF-8 🤷‍♂️Nobuyoshi Nakada
And dump the title as US-ASCII.
2019-05-31Add --limit option and default it to 20Nobuyoshi Nakada
2019-05-31Define RUBY_FULL_REVISIONNobuyoshi Nakada
Only if the short revision differs from the full revision.
2019-05-22Make RUBY_REVISION full lengthNobuyoshi Nakada
2019-05-22Fix revision nameNobuyoshi Nakada
* tool/make-snapshot (package): use the last revision of the whole tree as the revision name, not a single file. * tool/file2lastrev.rb: ditto. dump without unnecessary subrange and literal quotes, to stringize SVN revisions properly.
2019-04-22Migrate RUBY_VERSION/RUBY_DESCRIPTION to GitTakashi Kokubun
from Subversion. This behavior is tentative and not discussed well. The point of discussion will be just the length of commit hash, and I thought we should include this kind of change in 2.7.0-preview1 release even before the length is fixed yet. Let's discuss that afterwards and fix it later as needed. Naruse suggested that length=10 is very unlikely to cause conflict, and thus it's used by email notification and rubyci now. This behavior is in favor of that for now.
2017-12-06file2lastrev.rb: suppress_not_foundnobu
* tool/file2lastrev.rb: exit successfully when command not found, and if --suppress_not_found is given. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61055 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-07-02tool: add descriptions and fix typosnormal
* tool/asm_parse.rb: add description * tool/change_maker.rb: ditto * tool/downloader.rb: ditto * tool/eval.rb: ditto * tool/expand-config.rb: ditto * tool/extlibs.rb: ditto * tool/fake.rb: ditto * tool/file2lastrev.rb: ditto * tool/gem-unpack.rb: ditto * tool/gen_dummy_probes.rb: ditto * tool/gen_ruby_tapset.rb: ditto * tool/generic_erb.rb: ditto * tool/id2token.rb: ditto * tool/ifchange: ditto * tool/insns2vm.rb: ditto * tool/instruction.rb: ditto * tool/jisx0208.rb: ditto * tool/merger.rb: ditto * tool/mkrunnable.rb: ditto * tool/node_name.rb: ditto * tool/parse.rb: ditto * tool/rbinstall.rb: ditto * tool/rbuninstall.rb: ditto * tool/rmdirs: ditto * tool/runruby.rb: ditto * tool/strip-rdoc.rb: ditto * tool/vcs.rb: ditto * tool/vtlh.rb: ditto * tool/ytab.sed: ditto * tool/enc-unicode.rb: fix typo * tool/mk_call_iseq_optimized.rb: ditto * tool/update-deps: ditto [ruby-core:76215] [Bug #12539] by Noah Gibbs <the.codefolio.guy@gmail.com> git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55564 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-12-24* tool/file2lastrev.rb: Fix ArgumentError to work on Ruby 1.8.7.sorah
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53270 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-05-23file2lastrev.rb: format for modifiednobu
* tool/file2lastrev.rb: add optional argument to --modified, for strftime format. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50613 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-05-23file2lastrev.rb: all ARGVnobu
* tool/file2lastrev.rb: output for each arguments. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50612 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-02-18version.c: last commit titlenobu
* version.c (ruby_show_version): show last commit title, if different than the trunk. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@49638 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-01-17file2lastrev.rb: no ellipsis shorter namesnobu
* tool/file2lastrev.rb (revision_h): do not truncate and ellipsis names shorter than the limit. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@49308 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-01-17file2lastrev.rb: limit branch namesnobu
* tool/file2lastrev.rb (revision_h): limit branch names upto 16 chars, and replace extra part with ".." not to exceed the limit. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@49305 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-01-17version.h: include branch namenobu
* tool/file2lastrev.rb, tool/vcs.rb (get_revisions): define RUBY_BRANCH_NAME from the current branch name. * version.h (RUBY_REVISION_STR): include the current branch name not "trunk" always. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@49301 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-08-22tool/vcs.rb: no time.rbnobu
* common.mk (Doxyfile): revert r43888, not to require preinstalled ruby. [ruby-core:64488] [Bug #10161] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@47248 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-11-09rbinstall.rb: spec date from VCSnobu
* tool/rbinstall.rb (Gem::Specification.load): obtain spec date from VCS for the case using git, RUBY_RELEASE_DATE is the last resort. probably fixes [Bug #9085]. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43617 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-11-09vcs.rb: splitnobu
* tool/vcs.rb: split from file2lastrev.rb. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43609 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-01-02* tool/file2lastrev.rb (VCS::detect): Add support for Subversionknu
1.7 which adopted a whole new working directory structure. * tool/file2lastrev.rb (VCS::detect): Simply use .each instead of .sort.reverse_each which looks too arbitrary. If you want SVN to be tried first, then you just have to register it first as it is right now. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34176 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-07-17* tool/file2lastrev.rb: don't depend on pathname.rb if File.realpathakr
is available. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@28667 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-04-16* tool/file2lastrev.rb (VCS::SVN::get_revisions.): remind aboutnobu
DOSISH, sometimes. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@27354 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-04-15* tool/file2lastrev.rb: use backtick for ruby 1.8.akr
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@27349 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-04-15* tool/file2lastrev.rb: this should run with ruby 1.8.naruse
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@27348 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-04-15* tool/file2lastrev.rb: make -q effective for files not versionakr
controlled. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@27347 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-04-02* tool/file2lastrev.rb (VCS#relative_to): path and @srcdir may haveakr
different relative-ness. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@27199 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-03-30* tool/file2lastrev.rb (VCS::GIT_SVN): removed because git-log cannobu
deal with git-svn repository faster than git-svn-info. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@27105 b2dd03c8-39d4-4d8f-98ff-823fe69b080e