-
Notifications
You must be signed in to change notification settings - Fork 7
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
ocap discipline aided by static typing #24
base: master
Are you sure you want to change the base?
Commits on Sep 20, 2016
-
bulk edit: os.path(), open() -> pathlib API
edit tool is [pathlib_edit.py][1] Two tweaks in repository.py were done manually. [1]: https://gist.github.com/dckc/40c8caf4c1dc0027ac0d3b1fdbb251d2
Configuration menu - View commit details
-
Copy full SHA for 76eaed3 - Browse repository at this point
Copy the full SHA 76eaed3View commit details -
Configuration menu - View commit details
-
Copy full SHA for 676dc70 - Browse repository at this point
Copy the full SHA 676dc70View commit details -
Configuration menu - View commit details
-
Copy full SHA for 7e0c2d9 - Browse repository at this point
Copy the full SHA 7e0c2d9View commit details -
Configuration menu - View commit details
-
Copy full SHA for a7e8cc0 - Browse repository at this point
Copy the full SHA a7e8cc0View commit details -
Configuration menu - View commit details
-
Copy full SHA for 49eb9eb - Browse repository at this point
Copy the full SHA 49eb9ebView commit details -
Configuration menu - View commit details
-
Copy full SHA for dafbb5d - Browse repository at this point
Copy the full SHA dafbb5dView commit details -
src/rpm: conventional (PEP8) whitespace style
- 4 space indentation - 79 characater line length
Configuration menu - View commit details
-
Copy full SHA for be5b212 - Browse repository at this point
Copy the full SHA be5b212View commit details -
use pkgutil.get_data for config resources
While get_data(), like import, is actually runtime I/O, we consider access to design-time constants as if it were access to any other static data (string, integer, ...).
Configuration menu - View commit details
-
Copy full SHA for b657d13 - Browse repository at this point
Copy the full SHA b657d13View commit details -
Configuration menu - View commit details
-
Copy full SHA for ed67148 - Browse repository at this point
Copy the full SHA ed67148View commit details -
distfile: use object capability discipline
- no powerful imports: os, subprocess, ... - copyfileobj is powerless: file access is passed in - PurePosixPath for syntax manipulation is also powerless - use PathExt rather than strings for access to files - allfiles KLUDGE: navigation thru absolute paths - PathTFix.__truediv__ Self type work-around (for p / sub) - cast .iterdir() result because our Self type work-around isn't smart enough - open() -> path.open() - pass urlopen, subprocess, random to Distfile as a distfile.Access - simplify, export UrlopenFn: always returns BinaryIO - util.RunCommand class represents subprocess interface - declare type for util.diff mkPopen arg - Distfile.__init__() static types (e.g. Hash) help with refactoring - complete static types for all Distfile methods - log.warning() is only declared to take a str. hm.
Configuration menu - View commit details
-
Copy full SHA for 93dcccd - Browse repository at this point
Copy the full SHA 93dcccdView commit details -
Configuration menu - View commit details
-
Copy full SHA for 583b758 - Browse repository at this point
Copy the full SHA 583b758View commit details -
Configuration menu - View commit details
-
Copy full SHA for 4427e05 - Browse repository at this point
Copy the full SHA 4427e05View commit details -
src.builder: explicit authority, static types
- DiffCreator gets subprocess - BuildDirectory gets platform - FileHandle etc. get an Access (subprocess etc.) - add check_output to RunCommand interface - Builder interface common to HostBuilder and TargetBuilder - refactor allpath KLUDGE using PathExt.platform() and config.config_path_fn - use single-assignment idiom for tar vs bsdtar - prune resource_directory - restore DIR_RESOURCES but only as a PurePath for use with check_call() - Distfile needs a RandomT - never mind PathTFix generic Self It didn't work -- turned into Any -- and hid a few type errors.
Configuration menu - View commit details
-
Copy full SHA for 06ff4cb - Browse repository at this point
Copy the full SHA 06ff4cbView commit details -
src.repository: ocap discipline, static types
- static types rather than **kwargs for op_distfile etc. - NamedTuple rather than dict for deferred package info - types for version (sometimes a class), checksum (always str) - class AnyVersion reifies type common to SimpleVersion, FullVersion - master_sites, patches are Set[str], not List[str] - move `build_depends = set()` to else branch to help mypy - clarify builder.Access name - prune more resource_directory dead code
Configuration menu - View commit details
-
Copy full SHA for aa5281c - Browse repository at this point
Copy the full SHA aa5281cView commit details -
Configuration menu - View commit details
-
Copy full SHA for 32160de - Browse repository at this point
Copy the full SHA 32160deView commit details -
Configuration menu - View commit details
-
Copy full SHA for 78fa349 - Browse repository at this point
Copy the full SHA 78fa349View commit details -
- two blank lines before class, def - 4 space indent - 79 character line limit
Configuration menu - View commit details
-
Copy full SHA for 26d3597 - Browse repository at this point
Copy the full SHA 26d3597View commit details -
Configuration menu - View commit details
-
Copy full SHA for 1c8d9b0 - Browse repository at this point
Copy the full SHA 1c8d9b0View commit details -
Configuration menu - View commit details
-
Copy full SHA for 3c60d52 - Browse repository at this point
Copy the full SHA 3c60d52View commit details -
src/catalog: style tweaks; prune unused items
- unused: SimpleVersion, lib_depends, files - two lines before class - spaces around / and after : - }); formatting
Configuration menu - View commit details
-
Copy full SHA for e40cb5b - Browse repository at this point
Copy the full SHA e40cb5bView commit details -
Configuration menu - View commit details
-
Copy full SHA for 12dc43c - Browse repository at this point
Copy the full SHA 12dc43cView commit details -
Configuration menu - View commit details
-
Copy full SHA for 0b61347 - Browse repository at this point
Copy the full SHA 0b61347View commit details
Commits on Sep 21, 2016
-
Configuration menu - View commit details
-
Copy full SHA for ee53b09 - Browse repository at this point
Copy the full SHA ee53b09View commit details -
Configuration menu - View commit details
-
Copy full SHA for a4c8c2e - Browse repository at this point
Copy the full SHA a4c8c2eView commit details -
test_get_target_packages(), trivial case
run with `py.test`, for example
Configuration menu - View commit details
-
Copy full SHA for db99f02 - Browse repository at this point
Copy the full SHA db99f02View commit details -
Configuration menu - View commit details
-
Copy full SHA for 444094a - Browse repository at this point
Copy the full SHA 444094aView commit details -
Configuration menu - View commit details
-
Copy full SHA for b079ac7 - Browse repository at this point
Copy the full SHA b079ac7View commit details -
declare packages/** as design-time test data
add __init__.py for use with pkgutil.get_data perhaps a bit of a kludge? but a harmless one
Configuration menu - View commit details
-
Copy full SHA for 75c2b84 - Browse repository at this point
Copy the full SHA 75c2b84View commit details -
Configuration menu - View commit details
-
Copy full SHA for 0ba5835 - Browse repository at this point
Copy the full SHA 0ba5835View commit details