#
f197120d |
|
18-Sep-2023 |
jurgenwigg <53076001+jurgenwigg@users.noreply.github.com> |
Import statements sorted with isort and fixed MockBuilder.py (#266) * Fixed missing closing bracket in the MockBuilder.py * Import statements sorted with isort
|
#
48afa21f |
|
21-Sep-2021 |
Alexander von Gluck IV <kallisti5@unixzen.com> |
DependencyAnalyzer: Catch a non-existant system_packages_directory * When run on non-haiku platforms, trying to analyze dependencies fails with a python missing /boot/system/packages error. * Catches that problem and ignores it with a warning. * This lets the dump dependency code run on Linux with an obvious long list of missing "haiku, haiku_devel" dependencies
|
#
61901115 |
|
31-Jan-2020 |
Alexander von Gluck IV <kallisti5@unixzen.com> |
python3: Fix missed itervalues -> values
|
#
8d5c14b6 |
|
31-Jan-2020 |
Michael Lotz <mmlr@mlotz.ch> |
python3: Finish python3 change. python2 breaking * Based on mmlr's 2017 work to use Python3 with changes and adjustments for the current codebase
|
#
e2012a3d |
|
31-Jan-2020 |
Alexander von Gluck IV <kallisti5@unixzen.com> |
python3: begin python3 fixes. print -> print()
|
#
269954fb |
|
10-Dec-2017 |
Michael Lotz <mmlr@mlotz.ch> |
Cleanup: Make some constructs more idiomatic. * Change 'not x in y' to 'x not in y'. * Use 'is' to compare None singleton. * Use 'instanceof(x, y)' instead of 'type(x) == y'. * Replace map builtin with list comprehension. * Rename self argument to cls for static method.
|
#
14652091 |
|
10-Dec-2017 |
Michael Lotz <mmlr@mlotz.ch> |
Cleanup: Remove trailing semicolons and a unneeded pass.
|
#
9836ce60 |
|
10-Dec-2017 |
Michael Lotz <mmlr@mlotz.ch> |
Cleanup: Whitespace and line length cleanup.
|
#
25319489 |
|
02-Dec-2017 |
Michael Lotz <mmlr@mlotz.ch> |
Port: Rework configuration of repository dir. Use a class variable and a setter to make the repository dir known to Port and add a context manager for temporarily adjusting the repository dir of specific ports. This removes the need to hand in the repository dir to various methods, which makes things more consistent. Some methods were previously using the repository dir given to the constructor while others needed it as argument. The Repository now makes itself known to Port and can change the current repository dir for the purpose of populating a new repository at a different path. With this, the ugly manual adjustment of the recipe cache of the Port by the Repository can be removed. It was directly changing internals of Port but used slightly different logic than within Port which lead to two different filenames being used for the recipe cache file. This caused recipes to be parsed once unnecessarily.
|
#
71a83f90 |
|
18-Dec-2016 |
Jessica Hamilton <jessica.l.hamilton@gmail.com> |
Use Unicode strings for warn() & sysExit().
|
#
86a26b09 |
|
07-Dec-2015 |
Michael Lotz <mmlr@mlotz.ch> |
DependencyAnalyzer: Cleanup, remove unneeded variable.
|
#
08ecede8 |
|
07-Dec-2015 |
Michael Lotz <mmlr@mlotz.ch> |
DependencyAnalyzer: Also resolve requires of system packages. This allows to find a set of bootstrap packages that need to be provided in order build the other (cyclic) ports.
|
#
238c3429 |
|
07-Dec-2015 |
Michael Lotz <mmlr@mlotz.ch> |
DependencyAnalyzer: Include more info in unresolved message. When a require can't be resolved, also print which package and port the requires originated from. This makes finding and fixing typos in recipes easier.
|
#
8a5ac8db |
|
07-Dec-2015 |
Michael Lotz <mmlr@mlotz.ch> |
DependencyAnalyzer: Sort printed dependency lists.
|
#
7a4db4b3 |
|
07-Dec-2015 |
Michael Lotz <mmlr@mlotz.ch> |
DependencyAnalyzer: Enumerate only active ports.
|
#
1349d36a |
|
07-Dec-2015 |
Michael Lotz <mmlr@mlotz.ch> |
DependencyAnalyzer: Respect noSystemPackages option.
|
#
56499b3c |
|
22-Nov-2015 |
Michael Lotz <mmlr@mlotz.ch> |
ShellScriptlets: Internalize parsing of scriptlet prerequires. Reduces duplication and knowledge of the original format.
|
#
ddb17dbe |
|
20-Nov-2014 |
Oliver Tappe <zooey@hirschkaefer.de> |
Adjust DependencyAnalyzer to new dependency resolution.
|
#
476dbcbe |
|
20-Nov-2014 |
Oliver Tappe <zooey@hirschkaefer.de> |
Refactoring: use properties where it seems fit. * Trying to be somewhat more Pythonic.
|
#
fc1d58c6 |
|
29-Oct-2014 |
Charlie Clark <charlie.clark@clark-consulting.eu> |
Revert to tab spacing for Pe's sake.
|
#
a5f922e3 |
|
27-Oct-2014 |
Charlie Clark <charlie.clark@clark-consulting.eu> |
Try again with whitespace.
|
#
558fbdb0 |
|
27-Oct-2014 |
Charlie Clark <charlie.clark@clark-consulting.eu> |
Second attempt to fix whitespace. Options are different on OS X.
|
#
429ec015 |
|
27-Oct-2014 |
Charlie Clark <charlie.clark@clark-consulting.eu> |
Convert tabs to spaces.
|
#
8e6dffc5 |
|
31-May-2014 |
Oliver Tappe <zooey@hirschkaefer.de> |
Cleanup: drop now superfluous method call.
|
#
e0963638 |
|
31-May-2014 |
Oliver Tappe <zooey@hirschkaefer.de> |
Simplify conversion from package-name/ID to port-name/ID. * adjust getPortIdForPackageId() and getPortNameForPackageName() to check if the given parameter is already valid, simplifying the loop, too * drop explicit checks before invocation of getPortIdForPackageId()
|
#
7d983745 |
|
11-Mar-2014 |
Oliver Tappe <zooey@hirschkaefer.de> |
Print resolving information during --do-bootstrap * this should make it easier to debug any problems that may occur when trying to untangle the circular dependencies
|
#
c4c8633b |
|
03-Oct-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
/boot/common has been removed Mostly the changes are straight-forward (don't look in /boot/common, adjust paths). A notable change concerns the resolution of port dependencies: We no longer simply include all /boot/system packages in the chroot, but only those that have to be pulled in according to the dependency resolution. This may break some recipes that don't declare all the things they actually require for building, but have worked previously due to those dependencies living in /boot/system.
|
#
5f6b4014 |
|
07-Aug-2013 |
Oliver Tappe <zooey@hirschkaefer.de> |
Adjust DependencyAnalyzer.getBuildOrderForBootstrap(): * don't pollute each port's work folder with package info files, but use a temporary folder instead * sort the list of immediately buildable ports by name, to get a reproducable order (not a more or less random one)
|
#
a0381c6e |
|
07-Aug-2013 |
Oliver Tappe <zooey@hirschkaefer.de> |
Add DependencyAnalyzer.getBuildOrderForBootstrap(): * loop over ports with cyclic dependencies and try to find at least one that is immediately buildable * if a immediately buildable port has been found, pretend it has been built and remove it from the set of cyclic dependencies * complain if no port in the set is immediatly buildable (this means that something is wrong in the declaration of requires or a prerequired package is missing) * continue until all ports have been handled
|
#
029ccfaf |
|
06-Aug-2013 |
Oliver Tappe <zooey@hirschkaefer.de> |
Restructure DependencyAnalyzer a bit. * let __init__ only compute the different groups of nodes and print them in printDependencies() * keep full set of ports with cyclic dependencies (i.e. do not leave out ports required by HaikuPorter directly)
|
#
99a61dae |
|
19-Jul-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Unifiy the Options and GlobalConfig somewhat * Module GlobalConfig is replaced with new module Configuration. The global variable globalConfiguration is gone. Instead Configuration provides getter methods. * For several of the (newer) command line options there are now optional configuration file entries. If given the command line values override the configuration file values. Configuration also provides getter methods for these options, which should be used instead of getOption().
|
#
9ee2ba93 |
|
13-Jul-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Add option '--command-package' to specify the package command
|
#
95fd6a8b |
|
17-Jun-2013 |
Oliver Tappe <zooey@hirschkaefer.de> |
Add license header (MIT) * additionally: uppercase copyright notices and separate them from the top by a single line
|
#
7f54bf6b |
|
04-Jun-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
DependencyAnalyzer: Make repository directories subdirectories ... of the repository directory to keep things tidier.
|
#
11a55105 |
|
04-Jun-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
DependencyAnalyzer: Consider haikuporter dependencies Also: * Remove special handling of self-depending ports. As done it wasn't correct. * Compute out-degrees and remove the acyclic part of the graph that doesn't depend on anything else. ATM it is empty, though. Thinking a while about it, for a correct analysis we need separated build pre-/requires declarations for build host and target. Otherwise it isn't clear what we actually need to cross-build a port.
|
#
58ebd6f7 |
|
31-May-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
DependencyAnalyzer: Discriminate between ports and packages Now we correctly take the requires declarations into account.
|
#
5cdc00bb |
|
01-Jun-2013 |
Oliver Tappe <zooey@hirschkaefer.de> |
Minor cleanup of imports
|
#
b247776d |
|
30-May-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Add option -D for analyzing port dependencies Currently it only prints the required system packages, the self-depending ports, and the ports with cyclic dependencies.
|
#
ddb17dbe300d98cf6d8c34ac34feb586a503e66e |
|
20-Nov-2014 |
Oliver Tappe <zooey@hirschkaefer.de> |
Adjust DependencyAnalyzer to new dependency resolution.
|
#
476dbcbe3fe6d63d35a2ac5db1b789f2434e04a4 |
|
20-Nov-2014 |
Oliver Tappe <zooey@hirschkaefer.de> |
Refactoring: use properties where it seems fit. * Trying to be somewhat more Pythonic.
|
#
fc1d58c6abe57c99c11ec02b27be40844fb53572 |
|
29-Oct-2014 |
Charlie Clark <charlie.clark@clark-consulting.eu> |
Revert to tab spacing for Pe's sake.
|
#
a5f922e3fded4460be5a3c717862e7e588772487 |
|
27-Oct-2014 |
Charlie Clark <charlie.clark@clark-consulting.eu> |
Try again with whitespace.
|
#
558fbdb04ff6cb063a4afba7f15b6f1bd0343af2 |
|
27-Oct-2014 |
Charlie Clark <charlie.clark@clark-consulting.eu> |
Second attempt to fix whitespace. Options are different on OS X.
|
#
429ec015d0c47da50e302537ed33bc3f80d035a8 |
|
27-Oct-2014 |
Charlie Clark <charlie.clark@clark-consulting.eu> |
Convert tabs to spaces.
|
#
8e6dffc534a37ff585417bc693b81da619f0bb76 |
|
31-May-2014 |
Oliver Tappe <zooey@hirschkaefer.de> |
Cleanup: drop now superfluous method call.
|
#
e096363865bb3704eff0d30ff701ffd3271d7ed2 |
|
31-May-2014 |
Oliver Tappe <zooey@hirschkaefer.de> |
Simplify conversion from package-name/ID to port-name/ID. * adjust getPortIdForPackageId() and getPortNameForPackageName() to check if the given parameter is already valid, simplifying the loop, too * drop explicit checks before invocation of getPortIdForPackageId()
|
#
7d9837454d136703f5682ccd42fa3cd234d5f7da |
|
11-Mar-2014 |
Oliver Tappe <zooey@hirschkaefer.de> |
Print resolving information during --do-bootstrap * this should make it easier to debug any problems that may occur when trying to untangle the circular dependencies
|
#
c4c8633bbdf41a3e81391183a4325444f08ed02d |
|
03-Oct-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
/boot/common has been removed Mostly the changes are straight-forward (don't look in /boot/common, adjust paths). A notable change concerns the resolution of port dependencies: We no longer simply include all /boot/system packages in the chroot, but only those that have to be pulled in according to the dependency resolution. This may break some recipes that don't declare all the things they actually require for building, but have worked previously due to those dependencies living in /boot/system.
|
#
5f6b4014d147442db01e01ddd3a483dc3ba51e31 |
|
07-Aug-2013 |
Oliver Tappe <zooey@hirschkaefer.de> |
Adjust DependencyAnalyzer.getBuildOrderForBootstrap(): * don't pollute each port's work folder with package info files, but use a temporary folder instead * sort the list of immediately buildable ports by name, to get a reproducable order (not a more or less random one)
|
#
a0381c6ef238c12bbb145875886bd45bf512a55e |
|
07-Aug-2013 |
Oliver Tappe <zooey@hirschkaefer.de> |
Add DependencyAnalyzer.getBuildOrderForBootstrap(): * loop over ports with cyclic dependencies and try to find at least one that is immediately buildable * if a immediately buildable port has been found, pretend it has been built and remove it from the set of cyclic dependencies * complain if no port in the set is immediatly buildable (this means that something is wrong in the declaration of requires or a prerequired package is missing) * continue until all ports have been handled
|
#
029ccfafc8afe02b844c7243d8962966ace9ae49 |
|
06-Aug-2013 |
Oliver Tappe <zooey@hirschkaefer.de> |
Restructure DependencyAnalyzer a bit. * let __init__ only compute the different groups of nodes and print them in printDependencies() * keep full set of ports with cyclic dependencies (i.e. do not leave out ports required by HaikuPorter directly)
|
#
99a61dae85929042affb1fe60e038aa4149261d5 |
|
19-Jul-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Unifiy the Options and GlobalConfig somewhat * Module GlobalConfig is replaced with new module Configuration. The global variable globalConfiguration is gone. Instead Configuration provides getter methods. * For several of the (newer) command line options there are now optional configuration file entries. If given the command line values override the configuration file values. Configuration also provides getter methods for these options, which should be used instead of getOption().
|
#
9ee2ba93f86249973bfd1003a17da3bb4f7232cc |
|
13-Jul-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Add option '--command-package' to specify the package command
|
#
95fd6a8bd4d47186696c722b6717b2b073e799a1 |
|
17-Jun-2013 |
Oliver Tappe <zooey@hirschkaefer.de> |
Add license header (MIT) * additionally: uppercase copyright notices and separate them from the top by a single line
|
#
7f54bf6b2745f3f3974448a04c8f16cb4ab4b9c5 |
|
04-Jun-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
DependencyAnalyzer: Make repository directories subdirectories ... of the repository directory to keep things tidier.
|
#
11a5510507cf6e99d568c6386e2c7a83b42e47bb |
|
04-Jun-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
DependencyAnalyzer: Consider haikuporter dependencies Also: * Remove special handling of self-depending ports. As done it wasn't correct. * Compute out-degrees and remove the acyclic part of the graph that doesn't depend on anything else. ATM it is empty, though. Thinking a while about it, for a correct analysis we need separated build pre-/requires declarations for build host and target. Otherwise it isn't clear what we actually need to cross-build a port.
|
#
58ebd6f7328dcc4135d1425112fee74c9f56983b |
|
31-May-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
DependencyAnalyzer: Discriminate between ports and packages Now we correctly take the requires declarations into account.
|
#
5cdc00bb20b316dea2b854eaa1babb95fe9df0a8 |
|
01-Jun-2013 |
Oliver Tappe <zooey@hirschkaefer.de> |
Minor cleanup of imports
|
#
b247776d23f290443e0b0e4f49608d974c7dda7f |
|
30-May-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Add option -D for analyzing port dependencies Currently it only prints the required system packages, the self-depending ports, and the ports with cyclic dependencies.
|