1130 Commits

Author SHA1 Message Date
Alyssa Ross
84dda31e82
Add tests for ENV#clear_sensitive_environment! 2018-03-01 17:48:08 +00:00
Shaun Jackman
97932c1abf Move linkage_checker from os/mac to generic 2018-02-28 11:18:27 -08:00
Mike McQuaid
2205f62ec6 irb: add pry support.
Make `brew irb` optionally support `pry`. While doing so, also make it a `dev-cmd`.
2018-02-28 11:36:23 +00:00
Maxim Belkin
5536f49305 Cross-platform java detection 2018-02-22 18:32:21 +00:00
Maxim Belkin
f8874004c2 Make 'xz' and 'cvs' dependencies conditional 2018-02-21 14:11:35 +00:00
Maxim Belkin
14d7a7a08c Code refactoring 4.0 2018-02-20 21:33:38 +00:00
Maxim Belkin
d25fc5ce50 Code refactoring 2018-02-19 09:54:36 +00:00
Maxim Belkin
3dabebbd16 Refactoring based on suggestions
Defaulting zip_dep_if_needed(tags) and bzip2_dep_if_needed(tags)
methods to those on Linux and overriding them on macOS.
2018-02-19 06:49:42 +00:00
Maxim Belkin
1b74f21492
Removing unnecessary arguments 2018-02-16 15:08:55 -06:00
Maxim Belkin
5a92976120
Fixing brew-style offenses 2018-02-16 10:49:43 -06:00
Maxim Belkin
444b292df9
zip and bzip2 dependencies when needed
On some systems identified as Linux, zip and bzip2 might
not be available. Therefore, on such platforms we add them
unconditionally as dependencies when required. On Mac, these
dependencies are always satisfied.
2018-02-16 10:41:14 -06:00
Andrew Janke
49972e5905 write_jar_script: add java version option 2018-02-11 14:47:51 -05:00
ilovezfs
2e1ec02aeb pathname: fix rmdir_if_possible with mount points
Attempting to rmdir a directory that is a mount point results in EBUSY,
not EACCES or ENOENT, so also rescue EBUSY in rmdir_if_possible.
2018-01-19 14:06:22 -08:00
Mike McQuaid
e5c82dd3d9 Deprecate requirements harder
Remove more Requirement logic to enable future removal of default
formula logic. Also, output deprecations, convert symbol requirement
usage to deps and simplify the compatibility code for the direct
Requirement usage.
2018-01-18 08:31:20 +00:00
Mike McQuaid
27be33b245 Deprecate Git, Subversion requirements.
These rely on `default_formula` to be useful and are better following
the `*_dep_if_needed` pattern.
2018-01-10 13:19:50 +00:00
Mike McQuaid
069b61029b
Merge pull request #3627 from sjackman/circleci
pathname: Use CI env variable rather than TRAVIS
2018-01-04 08:28:34 +00:00
Shaun Jackman
841dae4b8c pathname: Use CI env variable rather than TRAVIS 2018-01-03 13:17:23 -08:00
Shaun Jackman
5d9149a4b9 LD64Dependency is needed on macOS only
Move ld64_dependency.rb to os/mac/.
2018-01-03 10:52:12 -08:00
Mike McQuaid
d54e670a64 requirements: move more to compat. 2017-12-30 20:56:55 +00:00
Mike McQuaid
38ce994007 Deprecate more requirements.
These are ones that were either already deprecated due to audit rules
or are just a simple `which` with a `default_formula` so should just
be a dependency.
2017-12-23 16:53:25 +00:00
Mike McQuaid
5b178c2892 dependency_collector: cleanup optional system deps 2017-12-23 16:36:33 +00:00
Mike McQuaid
837ea74f44
Merge pull request #3543 from MikeMcQuaid/remove-env-unsets
Remove some unset/checked environment checks
2017-12-10 17:46:29 +00:00
Shaun Jackman
020c1adebd X11Requirement: Inherit from generic class [macOS]
Fix the warning: already initialized constant X11Requirement
2017-12-08 10:38:58 -08:00
Mike McQuaid
6b9ca5dbf5 Remove some unset/checked environment checks
These will be redundant once environment filtering is on by default
in #3529.
2017-12-08 16:33:33 +00:00
Mike McQuaid
5055c31a86
Merge pull request #3483 from sjackman/x11
Implement X11Requirement for Linux
2017-12-08 15:47:37 +00:00
Shaun Jackman
0575d7b610 config: Print host glibc version [Linux] 2017-12-07 10:37:19 -08:00
Shaun Jackman
804393efc4 Implement X11Requirement for Linux
Move the XQuartz implementation to extend/os/mac/requirements.
2017-12-07 08:45:29 -08:00
Shaun Jackman
d79c5ade1a Implement linkage for Linux 2017-12-03 16:22:51 -08:00
Shaun Jackman
e5847b652f extend/pathname: Add os/linux/elf.rb 2017-12-03 16:22:51 -08:00
Mike McQuaid
d0e893fab6
Merge pull request #3516 from sjackman/system-config-version
config: Print the linked_version [Linux]
2017-12-03 09:19:22 +00:00
Shaun Jackman
06b9f1c50d config: Print the linked_version [Linux]
Otherwise when the keg was installed but out-of-date, it would display "N/A".
2017-12-02 09:27:39 -08:00
Shaun Jackman
0ce7a74c58 Hardware::CPU: Implement OS-agnostic methods 2017-12-01 15:18:35 -08:00
Mike McQuaid
fb6cf0c3f8 More environment filtering fixes
- Make `brew pull` pass through Git environment variables
- Whitelist all `TRAVIS_` variables.
2017-11-27 10:48:03 +00:00
Shaun Jackman
7394208873 Cleaner: ELF files are executable on Linux 2017-11-26 08:25:50 -08:00
ilovezfs
15a2ef525f ENV: don't set MACOSX_DEPLOYMENT_TARGET
CMake tries to use Xcode if MACOSX_DEPLOYMENT_TARGET is set but that can
lead to build failures when SDKROOT isn't set. The CMake behavior at
minimum manifests as -isysroot spontaneously being set to the Xcode SDK,
which brew sometimes can't successfully fully unwind with its ENV hacks.
2017-11-18 11:31:08 -08:00
Mike McQuaid
2e1331cbc8 Tweak SDK variables for new Xcode/CLT setup. 2017-11-17 21:35:49 +00:00
Mike McQuaid
cd0db51343 diagnostic: check if Xcode needs CLT installed.
Require the CLT on all but the latest version of macOS to avoid the
continuous workarounds for SDK weirdness.
2017-11-17 21:35:49 +00:00
Mike McQuaid
5241d07474 environment filtering: pass through TRAVIS vars.
We use these internally so let's map them to `HOMEBREW_` variables.
2017-11-13 10:01:54 +00:00
Mike McQuaid
ee4172159b
Merge pull request #3377 from maxim-belkin/extend-pathname
pathname: new methods and improvements
2017-11-10 17:49:27 +00:00
Maxim Belkin
de0b93f912
pathname: improvements, cleanups, and new methods
- atomic_write: close file before renaming to prevent error:
  'Device or resource busy'
- ensure_writable: preserve executable bit
- new elf? and dynamic? methods
2017-11-07 14:18:25 -06:00
Mike McQuaid
9358f678a3 Clear/mask passwords as well as tokens. 2017-11-07 07:54:34 +00:00
Mike McQuaid
2ad1799308 os/mac/diagnostic: fix XQuartz message.
Fixes #3434.
2017-11-07 07:39:10 +00:00
Mike McQuaid
603d6fd1f5 ENV/super: simplify version checks. 2017-11-05 15:39:43 +00:00
Mike McQuaid
8c6defd9cf diagnostic: simplify version checks. 2017-11-05 15:39:43 +00:00
Mike McQuaid
b69d71edea system_config: handle new non-string Xcode version 2017-11-05 15:39:43 +00:00
Mike McQuaid
2d5bb029a5
Merge pull request #3387 from MikeMcQuaid/env-std-homebrew-paths
ENV/std: fully extend from HOMEBREW_PATH.
2017-10-30 16:09:01 +00:00
Mike McQuaid
ca189437e4 Tweak use of with_env
- Use it in more places where it saves code
- Allow using symbolic keys for a cleaner interface
- Use `HOMEBREW_GEM_*` instead of `GEM_OLD_*`
2017-10-29 14:44:43 +00:00
Mike McQuaid
f72aba548d ENV/std: fully extend from HOMEBREW_PATH.
Rather than just re-adding HOMEBREW_PREFIX/bin if it's missing re-add
everything from HOMEBREW_PATH. This works well with or without
environment filtering being enabled but with environment filtering it
ensures that ENV/std just builds on the original user environment.
2017-10-29 13:41:51 +00:00
JCount
224864b149 java_requirement: support prompting users to install legacy Java casks
This enhances the Java requirement to support prompting the user
to install the correct legacy Java version via Cask for formulae
that don't yet work with the latest version of Java. Previously,
even if the formula had a strict requirement that a specific,
older version of Java be used, the messaging would tell the user to
`brew cask install java` (i.e. to install the latest version of Java),
which wouldn't actually satisfy the requirement.
2017-10-26 09:57:03 -04:00
Markus Reiter
487bec9570 Move String#undent to compat. 2017-10-18 14:39:09 +02:00