Commit Graph

61 Commits

Author SHA1 Message Date
Gregory Szorc
f99d0b9b59 Bug 1200461 - Prompt for Bugzilla API Key instead of password; r=smacleod
All extensions in version-control-tools should support Bugzilla API Keys
now. MozReview requires them. We'll likely remove support for passwords
and cookie auth in the future. This commit transitions the Mercurial
setup wizard to API Keys exclusively.

DONTBUILD (NPOTB)

--HG--
extra : commitid : DM33vGsljQz
extra : rebase_source : 047cd10eb976719ce94478a9a08363dbcd86ae68
2015-09-15 15:57:40 -07:00
Gregory Szorc
7c77cbc5d3 Bug 1195445 - Update host key fingerprint for bugzilla.mozilla.org
The certificate was updated to a SHA-2 certificate.

DONTBUILD (NPOTB)

--HG--
extra : commitid : 11QMFkjpCTa
extra : rebase_source : b9e005c278ef223066a58d78029ccbb4a1c1c9e4
extra : amend_source : bb1bcd8003fa644ce4c8876ec2aa7ac20790ad9e
2015-09-01 17:52:46 -07:00
Xidorn Quan
5264de316d Bug 1200458 - Skip permission check for .hgrc on Windows in hgsetup wizard. r=gps DONTBUILD
--HG--
extra : source : 8fa50ca328f1204bf5f4a51cf3d74de3200c3c0f
2015-09-01 10:22:45 +10:00
Birunthan Mohanathas
bc29413b87 Bug 1197527 - Consolidate obtaining hg path into mozversioncontrol.get_hg_path; r=gps
DONTBUILD

--HG--
extra : commitid : LsREOYJSAa7
extra : amend_source : 6f19087188d9c6c009a817c3499c7fd9165bfc6a
extra : histedit_source : 36aa6d1a3e78367d50a3e65ac6f61872b7a635d4
2015-08-24 14:37:42 -04:00
Birunthan Mohanathas
578bb09fd5 Bug 1197527 - Always clone version-control-tools in MercurialSetupWizard; r=gps
--HG--
extra : commitid : EFt8PQR3B2S
extra : histedit_source : 0bea4cef45799c3ce688f4f0caea966b237abcbc
2015-08-24 10:31:55 -07:00
Birunthan Mohanathas
467f93f8fd Bug 1197527 - Don't unnecessarily attempt to create extensions directory in MercurialUpdater; r=gps
--HG--
extra : commitid : 9RzrDPQc3oG
extra : histedit_source : 9b9c33161c67af1b7f577f2a8faeaf196e63f02b
2015-08-22 13:50:05 -07:00
Brian Smith
af289e29eb Bug 1188931 - Fix hgsetup wizard. r=gps
--HG--
extra : rebase_source : cecc4d721d77467dfbe384a9bbd0fc6ace3ba6a3
2015-07-29 13:59:18 -04:00
Gregory Szorc
b5154c4df4 Bug 1184229 - Detect multiple version-control-tools repos in Mercurial config; r=smacleod
Having multiple version-control-tools repositories references in your
hgrc could lead to one repository importing code from another, depending
on how sys.path modification works from version-control-tools
repositories. Detect it and issue a warning.

--HG--
extra : commitid : 2rfQARjGfu9
extra : rebase_source : 01d221cdc4b462cb52041d1d18f121e09b23125c
extra : amend_source : bac3fd876d6c8f0a3a94f4ae25950f5971dcb869
2015-07-27 13:44:39 -07:00
Gregory Szorc
93e629ca43 Bug 1185557 - Print relevant config options; r=smacleod
Users may want to know what the wizard is changing before they answer
prompts. Add the names of impacted config options to messages so people
can make more informed decisions.

--HG--
extra : commitid : 6p2kijj68zV
extra : rebase_source : 6468ab56fad7292ac9811c546882693aee8b5922
2015-07-21 10:11:09 -07:00
Gregory Szorc
c0dc074f70 Bug 1185557 - Prompt about bzexport after reviewboard; r=smacleod
We want to encourage people to use reviewboard over bzexport.

--HG--
extra : commitid : 4SacVKrLjxU
extra : rebase_source : 8a466b026d273a10e09184a21d14870cfb89b959
2015-07-21 10:10:54 -07:00
Gregory Szorc
e9eb7e6445 Bug 1185557 - Only prompt to install progress on Mercurial <3.5; r=smacleod
Progress is enabled by default in Mercurial 3.5. extensions.progress
no-ops. Don't prompt for it on newer Mercurial versions.

--HG--
extra : commitid : 5zyqyanQ64o
extra : rebase_source : 9fe52282b715949b8565683ffce9a7538325b3c6
2015-07-21 10:10:38 -07:00
Gregory Szorc
dc31130b11 Bug 1185562 - Print message saying the mercurial-setup failures unblock mach; r=smacleod
The messaging on this could be bikeshedded. Something is better than
nothing, that's for sure.

--HG--
extra : commitid : BIflUCCjwsg
extra : rebase_source : 72913ca7cfeadaf6f3efd1a277282a6786d2ba66
2015-07-21 10:09:49 -07:00
Gregory Szorc
af7dd87352 Bug 1185112 - Don't prompt for Bugzilla username/password if cookies defined; r=smacleod
Before, we prompted for Bugzila username/password if the hgrc contained
credentials in cookie form. Don't do that.

--HG--
extra : commitid : 1aGcwtZzsDM
extra : rebase_source : e7a1355f44b641337adb6cefd3c90ef1bf077fbd
2015-07-21 10:09:15 -07:00
Gregory Szorc
1d8ac6998b Bug 1185113 - Support setting more secure file permissions; r=smacleod
~/.hgrc files are likely created with the user's default umask, which
commonly gives default permissions of 644. If the hgrc config contains
sensitive information (such as Bugzilla credentials), these file
permissions could result in others stealing sensitive data.

Detect when the group and other file mode bits are set and prompt to
remove these permissions.

--HG--
extra : commitid : 6vVKQNd9yLi
extra : rebase_source : 860379bfbf8fdb4eef70b069e41a41239d93e40f
2015-07-21 10:08:24 -07:00
Gregory Szorc
c0a5c25aeb Bug 1185113 - Clarify language around Bugzilla credentials; r=smacleod
Bugzilla credentials are optional. Make this more obvious by adding
"optional" to the prompt.

Bugzilla credentials are stored in plain text. Explicitly call this out
in the help text so users can make informed decisions about whether to
capture the credentials.

--HG--
extra : commitid : DjPaYeh7oTo
extra : rebase_source : 05439551c097af9407ba15a54ab558637af4658b
2015-07-21 10:08:02 -07:00
Gregory Szorc
a6bb6ec5af Bug 1178955 - Print line number for parse errors; r=smacleod
It helps users debug problems.

--HG--
extra : commitid : IU6Cw35FEiM
extra : rebase_source : f6ab1ef356bb10b689f2fed034a9f2564ffe0fc3
extra : amend_source : ef52d60ca12796fcfe32392077a7606628a54d29
2015-07-17 10:29:22 -07:00
Gregory Szorc
402674db49 Bug 1178955 - Error when semicolon comments are seen; r=smacleod
configobj doesn't support semicolon comments. Why, I don't know, since
they are pretty common in ini files.

Do a static check for semicolon comments and print a more actionable
error message.

--HG--
extra : commitid : CULjsg4do9Z
extra : rebase_source : f135cc726462c73a8363ebb8c98092177cf7ffd3
extra : amend_source : 0b8c67d5b0be3bc07cf7ff4f136bb58d342368c4
2015-07-17 10:29:09 -07:00
Gregory Szorc
67d8bb157c Bug 1178955 - Print config path on failure; r=smacleod
Actionable error messages are useful.

--HG--
extra : commitid : CDhGEzOJpTk
extra : rebase_source : cb90b3c4c39cc502a4680c1b71fb69b316443688
extra : amend_source : 8f21e837c34138a807f6a8afeefa233e96c56880
2015-07-17 10:28:55 -07:00
Gregory Szorc
ab35c26d9e Bug 1178955 - Refactor config path selection; r=smacleod
An upcoming commit will display the path of the config file in the error
message. In order to do this, the calling scope needs to know the path
to the config file.

--HG--
extra : commitid : 5CDrz1hQOOA
extra : rebase_source : 1c29359c9e98b15c99de9efb30add0b0a108aa59
extra : amend_source : 1aa2c504ce72fbdeae1da2f0a6f876e37c46f5f8
2015-07-17 10:28:29 -07:00
Gregory Szorc
9384a4421e Bug 1178955 - Don't pass config paths to updater; r=smacleod
They aren't needed.

--HG--
extra : commitid : 62sGc753PYY
extra : rebase_source : 8fc70f03909e693c20b756828045c4844b43325e
extra : amend_source : aa3e557c6e81824ed8788a8412f7ead09731f42d
2015-07-17 10:28:12 -07:00
Gregory Szorc
095d6a5110 Bug 1183982 - Ensure state directory exists before touching state file; a=me
The creation of the directory used to be handled by the running of the
wizard. Now, since we touch the state file first, we need to create the
directory manually. Derp.

--HG--
extra : commitid : AyZNZgiy6c9
extra : rebase_source : 6deae7653be73f1245a0e1df924f05ccf9cc289c
extra : amend_source : c078de8411e6f6ce2321a03aac071f097beab1b5
2015-07-15 00:42:03 -07:00
Gregory Szorc
1e1df89147 Bug 1182677 - Add doctstring for mach mercurial-setup; r=smacleod
Mach grew support for docstrings in `mach help` output a few weeks ago.
Add a docstring for `mach mercurial-setup`.

--HG--
extra : commitid : G9xQeLS1Lo5
extra : rebase_source : 2dca87da7e973317dbce7f715d48c7109f65f922
2015-07-14 13:44:08 -07:00
Gregory Szorc
bce07abfe9 Bug 1182677 - Touch last check file before main command invocation; r=smacleod
While not common, there are a few cases where `mach mercurial-setup`
fails. When checking the last time this command was executed, it is
sufficient to record the intent to run the command, not the fact that it
executed to completion.

--HG--
extra : commitid : K9SMNXWNIgl
extra : rebase_source : 3275e2162e0e4cf4e00c66271458b08b4f2e5f7e
2015-07-14 13:42:02 -07:00
Gregory Szorc
3e949ee8fe Bug 1176642 - Use absolute_import in mach_commands.py files; r=glandium
This removes ambiguity as to which modules are being imported, making
import slightly faster as Python doesn't need to test so many
directories for file presence.

All files should already be using absolute imports because mach command
modules aren't imported to the package they belong to: they instead
belong to the "mach" package. So relative imports shouldn't have been
used.

--HG--
extra : commitid : 6tFME1KKfTD
extra : rebase_source : 78728f82f5487281620e00c2a8004cd5e1968087
2015-06-21 17:39:09 -07:00
Chris Manchester
486a47562c Bug 1162093 - Add "push-to-try" from version-control-tools to the mercurial setup wizard prompt.;r=gps
--HG--
extra : commitid : KlfgrTg1e8X
2015-06-02 20:41:29 -07:00
Gregory Szorc
06883e5900 Bug 1168466 - Prompt to install bundleclone extension; r=smacleod
We're about to deploy this to release automation. We might as well have
normal people start using it as well. We could perhaps even have the
extension print out information on how to resume interrupted downloads
someday, so it will pay to have this enabled so they can utilize that
feature some day in the future.

DONTBUILD (NPOTB)

--HG--
extra : commitid : CVW0xQNKjt3
extra : rebase_source : 8c5f609b036ac081c1af5f7428bb8d4a4c2ed476
extra : histedit_source : adb57e6fbb5f50af619fb98e1fbb17c815aca76e
2015-05-26 10:07:32 -07:00
Gregory Szorc
9bb66e65f0 Bug 1168466 - Bump minimum Mercurial version; r=smacleod
We dropped support for Mercurial 3.0 in version-control-tools. Bump
minimum versions in extensions to reflect this.

We highly recommend people run a modern Mercurial. Bump the minimum
non-legacy version to reflect that.

--HG--
extra : commitid : 8YtjoVnYauL
extra : rebase_source : 949c27a376226bbd32430047176012b51e891255
extra : histedit_source : aff04954269ed777c9b26ec3f1fda6526b1ae317
2015-05-26 10:00:52 -07:00
Ed Morley
7f51884ce9 Bug 1164812 - mach mercurial-setup: Always mark the v-c-t repo as needing update
Currently we only mark the version-control-tools repo as needing updating, if
we did not pass a path param to prompt_external_extension(). This is because if
no path is passed, the extension is used from the version-control-tools repo,
and so if _no_ path is passed, it's presumed the extension is external to the
repo. However this is not always the case - eg if we need to specify a specific
file for an extension (vs the entire directory), we have to do so be passing in
the path. We hit this case for reviewboard.

With this change, we always mark the version-control-tools repo as needing an
update, no matter where the extension was located.
2015-05-19 09:41:38 +01:00
Ed Morley
18e0893b16 Bug 978514 - mach mercurial-setup: Use mqext from the version-control-tools repo
mqext was moved into the version-control-tools repo some time ago, but mach
mercurial-setup was still pointing at the old repo location, which is no longer
being updated.
2015-05-19 09:41:38 +01:00
Gregory Szorc
4d9db7cba1 Bug 1164315 - Update key fingerprint for bitbucket.org; r=me
Value obtained from
https://blog.bitbucket.org/2015/05/06/bitbuckets-ssl-certificate-is-changing-for-sha-2/
and verified to work.

DONTBUILD (NPOTB)

--HG--
extra : commitid : AyMDr4OieQg
extra : amend_source : fba8a857e6f2a5044955d027620af36a847942d1
2015-05-12 20:21:47 -07:00
Gregory Szorc
744bbc11a4 Bug 1128586 - Prefer hg.exe over hg; r=RyanVM
This is needed for compatibility with an upcoming release of
MozillaBuild, which distributes Mercurial as a Python package, not as a
standalone Windows program. As a result, it introduces "hg" into $PATH,
which "which" will happily prefer as the "hg" binary. This upsets
subprocess. So, we explicitly prefer "hg.exe" over "hg".

We could accomplish the same thing by calling which.whichall() and
sorting results. But this is more code and IMO not worth the effort to
implement.

--HG--
extra : rebase_source : 750ba02c02fd4a9fab42ccf128eab4f5e7741564
extra : amend_source : 8fb84c0ed5cd14dd27ad6cd7b78fb2ac1ffc87a2
2015-04-27 10:43:49 -07:00
Stéphane SCHMIDELY
f5adae293e Bug 1144629 - UnicodeDecodeError in ./mach mercurial-setup. r=gps, r=glandium 2015-03-25 12:25:49 +01:00
Dawid Pura
9725a0ec5a Bug 1077326 - Change mercurial-setup process by adding run test for each external extension before prompting about it. r=glandium 2014-11-25 10:53:00 +01:00
Andrew Halberstadt
b458452297 Bug 1101773 - Add an --update-only option to |mach mercurial-setup| for updating extensions without running the wizard, r=gps
--HG--
extra : rebase_source : 93de55544f2f907255a286b1074ed201de62a46b
2014-11-19 15:01:04 -05:00
Andrew Halberstadt
dcafcc6e89 Bug 1092149 - Use LooseVersion instead of StrictVersion in |mach mercurial-setup| so release candidates work, r=gps 2014-10-31 15:09:39 -04:00
Rémy Ferré
3c5d0d44f7 Bug 1058845 - Decode raw_input() as UTF-8; r=gps
DONTBUILD (NPOTB)

--HG--
extra : amend_source : cf4f5e29de43f714ae62f247227b17e65debc710
2014-10-24 15:27:40 -07:00
Alexis Metaireau
98029cd385 Bug 1071133 — Make sure mercurial-setup knows how to handle unicode characters. r=gps 2014-09-22 20:03:17 +02:00
Felix Baylac-Jacque
d722dd07e7 Bug 1049893 - Allow mach mercurial-setup to work if no ~/.hgrc exists; r=gps
DONTBUILD (NPOTB)

--HG--
extra : rebase_source : 8788d55cd5cfa5e64627d7951209c5f2c1222f0a
2014-08-07 00:19:06 +02:00
Patrick Cloke
114d16e26a Bug 1047592 - mercurial-setup should error when trying to read a config with %include. r=gps 2014-08-05 09:42:33 -04:00
Gregory Szorc
1e3f120dc8 Bug 1039894 - Add bzpost and firefoxtree to mach mercurial-setup; r=smacleod
bzpost is an efficiency win for everyone.

firefox tree is mostly useful for people doing head/bookmark-based
development.

Both extensions can yield massive productivity wins. They should be
advertised.

DONTBUILD (NPOTB) on a CLOSED TREE

--HG--
extra : rebase_source : ab72d3afd6ab244bfdbdb2dda5e0b45c9d8f782e
extra : amend_source : 91ec7523a4631c7519efd3b6cd425cff00bd0569
2014-07-16 19:18:49 -07:00
Chris Kitching
c4f8d32e63 Bug 1039164: Prettier handling of invalid hgrc files by mach. r=gps 2014-07-17 01:21:06 +01:00
Gregory Szorc
c5c6819b0f Bug 1033656 - Add reviewboard to mach mercurial-setup; version checking; r=smacleod
We want to make it turnkey for people to use reviewboard. So, we add
reviewboard and related functionality to |mach mercurial-setup|.

Since the reviewboard extension only works in Mercurial 3.0 and newer,
we add some version detection for the Mercurial version. This should
have been done months ago. We now have it.

I also took the opportunity to inform |mach bootstrap| that Mercurial
2.x is no longer modern.

I also updated the messaging around mq to encourage fewer new users to
use it. You may find this controversial. People can always ignore the
message.

Finally, I also added a histedit prompt to the mix, since a lot of
people don't know about that and many find it useful.

I could have broken this into multiple patches. Meh.

--HG--
extra : rebase_source : d33f8abcabb6ad6511c2f9e202283d43613fafc4
extra : amend_source : 3a56bc4d49ee6200cbdd0e87b4f28489518fee79
2014-07-02 14:05:42 -07:00
Gregory Szorc
e177929bf7 Bug 994359 - Update Bitbucket certificate fingerprint; r=edmorley
Certificate updated per
http://blog.bitbucket.org/2014/04/08/bitbuckets-ssl-certificates-are-changing/

DONTBUILD (NPOTB)

--HG--
extra : rebase_source : 7b2acdad8221d40629a0fff7b9b9fcfbd51eb1a5
extra : amend_source : 2138af8ab774420f466e33914f2abdb82a52df25
2014-04-09 15:33:16 -07:00
Gregory Szorc
77f31d4d20 Bug 981724 - Update fingerprint for bitbucket; r=edmorley
DONTBUILD (NPOTB)

--HG--
extra : rebase_source : b69aeae32da1099a9ee195847d8daf02d38d4f7d
extra : amend_source : 294da8b00aeafb061c336be0b3c2b291ff3bf933
2014-03-10 10:35:40 -07:00
Ed Morley
575e4b2042 Bug 977961 - mach mercurial-setup: Avoid prompting to enable mqext auto-commit when already enabled; r=gps
DONTBUILD (NPOTB)
2014-02-28 16:43:01 +00:00
Ed Morley
46c09350dc Bug 977414 - mach mercurial-setup: Fix hgrc paths for extensions on Windows; r=gps 2014-02-27 10:10:22 +00:00
Ed Morley
1386611e1d Bug 977384 - mach mercurial-setup: Remaining cleanup; r=gps 2014-02-27 10:10:22 +00:00
Ed Morley
947aafcf25 Bug 977384 - mach mercurial-setup: Refactor part 2; r=gps 2014-02-27 10:10:21 +00:00
Ed Morley
8f447b8f21 Bug 977384 - mach mercurial-setup: Refactor part 1; r=gps 2014-02-27 10:10:20 +00:00
Ed Morley
2df90d1cdd Bug 976892 - Update mach mercurial-setup to use qimportbz from it's new home in version-control-tools; r=gps
qimportbz is now pulled from its new canonical home. The old location can
be cleaned if the user agrees to it. The new location is updated in the
hgrc.

DONTBUILD (NPOTB)
2014-02-26 17:28:09 +00:00