aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com/google/devtools/build/lib/rules/python
Commit message (Collapse)AuthorAge
* Switch to using ../repo-name syntax for runfilesGravatar Kristina Chodorow2016-05-04
| | | | | -- MOS_MIGRATED_REVID=121475668
* Add a --legacy_external_runfiles optionGravatar Kristina Chodorow2016-04-25
| | | | | | | | This isn't hooked up to anything yet, but is another piece of getting #848 rolled forward. -- MOS_MIGRATED_REVID=120582973
* Automated [] rollback of commit 857cda2c45a5cc68c3fa398311c48c571a64915d and ↵Gravatar Damien Martin-Guillerez2016-04-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | commit 790d2f6009d47fe92cf0cd92a1473bbf0141f32e. *** Reason for rollback *** Broke non-Bazel projects on ci.bazel.io Fixes #1168 *** Original change description *** Move the runfiles for external repositories to under the x.runfiles/ directory This also sets the Bazel workspace name to io_bazel_source. Fixes #848. Relevant to #1116, #1124, RELNOTES[INC]: All repositories are now directly under the x.runfiles directory in the runfiles tree (previously, external repositories were at x.runfiles/main-repo/external/other-repo. This simplifies handling remote repository runfiles considerably, but will break existing references to external repository runfiles.... *** -- MOS_MIGRATED_REVID=120535721
* Remove all internal calls to FileProvider.getLabel.Gravatar Ulf Adams2016-04-22
| | | | | | | | The method will be removed in a subsequent change to facilitate reverting the change in case it goes bad. -- MOS_MIGRATED_REVID=120526894
* Move the runfiles for external repositories to under the x.runfiles/ directoryGravatar Kristina Chodorow2016-04-20
| | | | | | | | | | | | | | | This also sets the Bazel workspace name to io_bazel_source. Fixes #848. Relevant to #1116, #1124, RELNOTES[INC]: All repositories are now directly under the x.runfiles directory in the runfiles tree (previously, external repositories were at x.runfiles/main-repo/external/other-repo. This simplifies handling remote repository runfiles considerably, but will break existing references to external repository runfiles. --- Furthermore, if a Bazel project does not provide a workspace name in the WORKSPACE file, Bazel will now default to using __main__ as the workspace name (instead of "", as previously). The repository's runfiles will appear under x.runfiles/__main__/. -- MOS_MIGRATED_REVID=120224534
* Review a number of action subclasses and update them according to the spec.Gravatar Ulf Adams2016-04-19
| | | | | | | | | | Second pass. Consists of adding @Immutable annotations, adding final modifiers, and changing the types of fields to immutable types. -- MOS_MIGRATED_REVID=120216592
* Fixed indentation problem: 8 spaces -> 4 spacesGravatar Yun Peng2016-03-21
| | | | | -- MOS_MIGRATED_REVID=117583615
* Changed py_wrap_cc rule's dependency validation to mandatoryProvdersList soGravatar Yun Peng2016-03-08
| | | | | | | that it can depend on Skylark rule. -- MOS_MIGRATED_REVID=116385078
* Python provider is now available in SkylarkGravatar Yun Peng2016-03-03
| | | | | | | | | | | | | Using mandatoryProvidersList to validate python rules' dependency. Added a SkylarkProvider named 'py' which is a SkylarkClassObject in Java and a struct in Skylark. Native python rule and Skylark python rule should have this provider so that they can depend on each other. RELNOTES[NEW]: Native python rule can depend on skylark rule as long as skylark rule provides 'py' provider. -- MOS_MIGRATED_REVID=116241504
* Add imports attribute to Bazel native Python rules to allow adding ↵Gravatar David Chen2016-02-10
| | | | | | | | | | | directories to PYTHONPATH. Fixes #702 RELNOTES: Add imports attribute to native Python rules. -- MOS_MIGRATED_REVID=114314430
* --Gravatar Googler2016-02-04
| | | | MOS_MIGRATED_REVID=113835948
* Change text of python package hyphen errorGravatar Googler2016-02-04
| | | | | | | | This message change is intended to make it clearer that hyphens are not allowed anywhere in the path that forms a Python package name, and there's no way around it, except for moving the Python rules to a different directory. -- MOS_MIGRATED_REVID=113833071
* Contractually document BuildConfiguration.Fragment as immutable and strengthenGravatar Greg Estren2016-02-01
| | | | | | | | | | | | | | | the immutability interfaces of existing implementations. Eventually we want all implementations to comply, but right now CppConfiguration is a glaring exception due to FDO/LIPO support. We don't want more exceptions to arise. This is prep work for pre-trimming ConfigurationFragment.key's BuildOptions input to just the options needed by the fragment. That implies fragments can be shared across configurations, so that needs to be safe. -- MOS_MIGRATED_REVID=113408041
* Add a --host_force_python flagGravatar Brian Silverman2016-01-04
| | | | | | | | | This allows using PY3 binaries in the HOST configuration. -- Change-Id: I9603bb19a72cb3d0d731de5b35e135ce952cc545 Reviewed-on: https://bazel-review.googlesource.com/2401 MOS_MIGRATED_REVID=111311727
* Move annotation classes used for referencing framework Java classes from ↵Gravatar John Field2015-12-16
| | | | | | | | | | | | | | Skylark into their own package. This allows, e.g., classes in the syntax package to access classes in the cmdline package without creating circular dependencies. While we're here: - Removed a couple of unused BUILD deps flagged in []. - Updated SkylarkRuleImplementationFunctionsTest to remove non-ASCII characters and clarify the intent of the test. -- MOS_MIGRATED_REVID=110360763
* Use Bazel Preconditions variant which avoids varargs array creationGravatar Mark Schaller2015-12-10
| | | | | | | Reduces garbage. -- MOS_MIGRATED_REVID=109914243
* Description redacted.Gravatar Carmi Grushko2015-11-24
| | | | | -- MOS_MIGRATED_REVID=108555227
* --Gravatar Carmi Grushko2015-11-12
| | | | MOS_MIGRATED_REVID=107604619
* Description redacted.Gravatar Googler2015-11-10
| | | | | -- MOS_MIGRATED_REVID=107379349
* Fix indentation.Gravatar Ulf Adams2015-10-30
| | | | | -- MOS_MIGRATED_REVID=106683157
* Un-hardcode the names of some Python implicit attributes ↵Gravatar Carmi Grushko2015-10-27
| | | | | | | ($python_precompile, etc.) -- MOS_MIGRATED_REVID=106352835
* Description redacted.Gravatar Googler2015-10-22
| | | | | -- MOS_MIGRATED_REVID=105975871
* Add a custom converter to --crosstool_top so that select() works.Gravatar Lukacs Berki2015-10-08
| | | | | -- MOS_MIGRATED_REVID=104845397
* Add a Constants.TOOLS_PREFIX constant that will serve to redirect the Bazel ↵Gravatar Lukacs Berki2015-10-05
| | | | | | | | | | | tools repository. This is a no-op refactoring CL. The actual switch will be made once everything passes with the new setup. As a side cleanup, change the awkward realAndroidSdk() / realAndroidCrosstoolTop() mechanism to a converter. -- MOS_MIGRATED_REVID=104649067
* Rationalize copyright headersGravatar Damien Martin-Guillerez2015-09-25
| | | | | | | | | | | The headers were modified with `find . -type f -exec 'sed' '-Ei' 's|Copyright 201([45]) Google|Copyright 201\1 The Bazel Authors|' '{}' ';'` And manual edit for not Google owned copyright. Because of the nature of ijar, I did not modified the header of file owned by Alan Donovan. The list of authors were extracted from the git log. It is missing older Google contributors that can be added on-demand. -- MOS_MIGRATED_REVID=103938715
* Move Label from the lib.syntax to the lib.cmdline package so that:Gravatar Lukacs Berki2015-09-21
| | | | | | | | | | - Label parsing can be simplified - lib.syntax is only contains the code for Skylark and is reasonably independent from the problem domain of building things This change is mostly only changes to imports declarations. The rest is reversing the dependency between :cmdline and :syntax and moving a tiny amount of code between Printer and FilesetEntry and the addition of SkylarkPrintableValue that I couldn't be bothered to separate out into its own change. -- MOS_MIGRATED_REVID=103527877
* Separate build-specific types and types inherent to Skylark.Gravatar Lukacs Berki2015-09-21
| | | | | -- MOS_MIGRATED_REVID=103374106
* Prevented catching/wrapping of InterruptedExceptions, especially in ↵Gravatar Florian Weikert2015-09-14
| | | | | | | BaseFunction. -- MOS_MIGRATED_REVID=102988766
* Code cleanupGravatar Laurent Le Brun2015-09-03
| | | | | -- MOS_MIGRATED_REVID=102239051
* Add a convenience method to InstrumentedFilesCollector.Gravatar Ulf Adams2015-08-31
| | | | | | | This simplifies the users a bit, and makes it easier to refactor the code. -- MOS_MIGRATED_REVID=101802767
* Fix C++ link order for py_library and py_binary rules.Gravatar Ulf Adams2015-08-28
| | | | | -- MOS_MIGRATED_REVID=101756783
* Replace AnalysisEnvironment.getDerivedArtifact() calls with ↵Gravatar Lukacs Berki2015-08-20
| | | | | | | RuleContext.getShareableArtifact() calls where the former method is used to create the outputs of shared actions. -- MOS_MIGRATED_REVID=101116694
* Set the workspace suffix for runfilesGravatar Kristina Chodorow2015-08-13
| | | | | | | This CL covers the "easy" cases. Followup CLs will take care of couple dozen remaining gnarly ones. -- MOS_MIGRATED_REVID=100479410
* Enable simple compilation of Python artifacts for py_binary and py_library.Gravatar Googler2015-07-27
| | | | | -- MOS_MIGRATED_REVID=99163140
* Remove BuildConfiguration.cacheKey() and replace .shortCacheKey() with a ↵Gravatar Lukacs Berki2015-06-29
| | | | | | | | | | | .checksum() method that is computed from the checksum of the build options. Also remove Fragment.cacheKey() and Fragment.getName(). The reasoning is that within a single build, if two BuildConfigurations share the same BuildOptions, they must be the same because BuildConfiguration can only be a function of BuildOptions, specific targets (which stay the same during a build) and BlazeDirectories (which stay the same during the lifetime of a server). Between different builds if the configurations are recreated, they will always be considered different because Java reference equality (==) is used for comparing BuildConfigurations. Also remove "Serializable" tags from configuration-related things. -- MOS_MIGRATED_REVID=97107881
* Refactoring: PseudoAction ctor "inputs" argument is now a NestedSet.Gravatar Laszlo Csomor2015-06-09
| | | | | -- MOS_MIGRATED_REVID=95514599
* Attach runfiles middlemen to py-binary data runfilesGravatar Michajlo Matijkiw2015-06-01
| | | | | -- MOS_MIGRATED_REVID=94758273
* Expose Python provider to SkylarkGravatar Laurent Le Brun2015-06-01
| | | | | | | | It is now possible to access transitive sources from py_binary and py_library rules with target.py.transitive_sources -- MOS_MIGRATED_REVID=94751866
* Have ConfiguredTargetFactory subclasses declare which FragmentOptionsGravatar Greg Estren2015-05-21
| | | | | | | | | | | | | | | | | | | | | | they need to create their fragments. This is prerequisite work for fragment-limited configurations (configurations that only include the fragments needed by their rules' transitive closures). Given a set of desired fragment classes, we need to know which FragmentOptions are needed to instantiate those fragments. Note that we can't map this relationship the other way (given a set of FragmentOptions, which fragment classes do they load?). That's because different fragment loaders may consume overlapping options. A good example is CppOptions, which is, e.g., used by both the C++ and Python configuration loaders. At some point, we're probably going to want to force configuration loaders to only understand options from their own "domain" (or have well-defined hierarchies). But that's not the reality of today. -- MOS_MIGRATED_REVID=94091093
* Add a converter for enum flags that can also be boolean.Gravatar Googler2015-05-21
| | | | | | | | | | A new converter class is added that makes it possible for enum flags to define a conversion from booleans to one of the enumeration values. This is in addition to the enumeration conversions. Fields that define such a converter can be used with the --flag and --noflag forms in addition to their --flag=value enumeration style. -- MOS_MIGRATED_REVID=93972718
* Expose PythonSourcesProvider to Skylark.Gravatar Laurent Le Brun2015-05-07
| | | | | -- MOS_MIGRATED_REVID=93025992
* Become more restrictive around Runfiles#manifestExpanderGravatar Michajlo Matijkiw2015-04-16
| | | | | | | | | | | | Previously the contract was pretty liberal and could allow addition of extra Artifacts. Create a more restrictive interface allowing the bare minimum- adding empty files to the tree. This makes the contract of Runfiles#getAllArtifacts() more sound, since arbitrary artifacts can't be added, and it makes it easier to figure out what implementations of manifest expansion exist out there. -- MOS_MIGRATED_REVID=91233821
* Initial checkin of Python rules into Bazel.Gravatar Lukacs Berki2015-03-23
-- MOS_MIGRATED_REVID=89123900