summaryrefslogtreecommitdiff
path: root/apt-pkg/deb
Commit message (Collapse)AuthorAgeFilesLines
* Rework TransactionID stuffMichael Vogt2014-07-311-6/+7
|
* Download Release first, then Release.gpgMichael Vogt2014-07-211-8/+8
| | | | | | | The old way of handling this was that pkgAcqMetaIndex was responsible to check/move both Release and Release.gpg in place. This breaks the assumption of the transaction that each pkgAcquire::Item has a single File that its responsible for.
* Allow passing a full path to apt-get install /foo/bar.debMichael Vogt2014-07-101-9/+19
| | | | CLoses: #752327
* Merge branch 'debian/sid' into debian/experimentalMichael Vogt2014-07-081-1/+2
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: apt-pkg/deb/deblistparser.cc doc/po/apt-doc.pot doc/po/de.po doc/po/es.po doc/po/fr.po doc/po/it.po doc/po/ja.po doc/po/pl.po doc/po/pt.po doc/po/pt_BR.po po/da.po po/mr.po po/vi.po
| * handle moved mmap after UniqFindTagWrite callDavid Kalnischkies2014-07-071-2/+6
| | | | | | | | | | | | | | | | | | | | | | | | A call to UniqFindTagWrite can trigger the need for a bigger mmap, which is usually done by moving it, but with this move all pointers into it become invalid (and have to be remapped). The compiler calculates the pointer before the execution of the call though, so it tries to store the returned value at the old location, resulting in a segfault. We solve this by use of a temprorary variable as we did in the other instances of this problem before. Closes: #753941
* | readd pkgPackageManager::Go() to not break APIMichael Vogt2014-06-182-20/+1
| |
* | remove the Section member from package structDavid Kalnischkies2014-06-181-3/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | A version belongs to a section and has hence a section member of its own. A package on the other hand can have multiple versions from different sections. This was "solved" by using the section which was parsed first as order of sources.list defines, but that is obviously a horribly unpredictable thing. We therefore directly remove this struct member to free some space and mark the access method as deprecated, which is told to return the section of the 'newest' known version, which is at least predictable, but possible not what it returned before – but nobody knows. Users are way better of with the Section() as returned by the version they are dealing with. It is likely the same for all versions of a package, but in the few cases it isn't, it is important (like packages moving from main/* to contrib/* or into oldlibs …).
* | cleanup datatypes mix used in binary cacheDavid Kalnischkies2014-06-183-8/+8
| | | | | | | | | | | | | | | | We had a wild mixture of (unsigned) int, long and long long here without much sense, so this commit adds a few typedefs to get some sense in the typesystem and ensures that a ID isn't sometimes computed as int, stored as long and compared with a long long… as this could potentially bite us later on as the size of the archive only increases over time.
* | Merge branch 'debian/sid' into debian/experimentalMichael Vogt2014-06-182-2/+4
|\| | | | | | | | | Conflicts: debian/changelog
| * Fix warning about uninitialized variableMichael Vogt2014-05-281-1/+2
| | | | | | | | Reported-By: clang++ -Werror
| * use free() instead of delete[] in debSrcRecordParser::~debSrcRecordParserMichael Vogt2014-05-271-1/+2
| | | | | | | | | | The Buffer was allocated using strndup() so we need to free it using free() instead of delete[]
* | Fix more warnings from clangMichael Vogt2014-05-293-7/+9
| | | | | | | | | | | | | | | | | | Reported-By: clang++ -Werror Conflicts: apt-pkg/acquire-item.cc apt-pkg/acquire-item.h apt-pkg/deb/debmetaindex.h
* | Merge remote-tracking branch 'upstream/debian/sid' into debian/experimentalMichael Vogt2014-05-292-1/+12
|\| | | | | | | | | Conflicts: test/integration/test-bug-747261-arch-specific-conflicts
| * Never parse Version/Architecture tags in a Translation-$lang fileMichael Vogt2014-05-152-1/+12
| | | | | | | | | | | | | | | | | | | | Version/Architecture information in a Translation-$lang file is not allowed, so don't try to parse it. This is a fix for a bugreport where a Translation-en file contained the content of the regular Packages file (probably due to local FS corruption). This lead to strange error messages on file download. Thanks to Thomas Reusch for the report.
* | parse and retrieve multiple Descriptions in one recordDavid Kalnischkies2014-05-094-46/+62
| | | | | | | | | | | | | | | | It seems unlikely for now that proper archives will carry multiple Description-* stanzas in the Packages (or Translation-*) file, but sometimes apt eats its own output as shown by the usage of the CD team and it would be interesting to let apt output multiple translations e.g. in 'apt-cache show'.
* | use HashStringList in the acquire systemDavid Kalnischkies2014-05-093-36/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | It is not very extensible to have the supported Hashes hardcoded everywhere and especially if it is part of virtual method names. It is also possible that a method does not support the 'best' hash (yet), so we might end up not being able to verify a file even though we have a common subset of supported hashes. And those are just two of the cases in which it is handy to have a more dynamic selection. The downside is that this is a MAJOR API break, but the HashStringList has a string constructor for compatibility, so with a bit of luck the few frontends playing with the acquire system directly are okay.
* | use 'best' hash for source authenticationDavid Kalnischkies2014-05-091-71/+99
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Collect all hashes we can get from the source record and put them into a HashStringList so that 'apt-get source' can use it instead of using always the MD5sum. We therefore also deprecate the MD5 struct member in favor of the list. While at it, the parsing of the Files is enhanced so that records which miss "Files" (aka MD5 checksums) are still searched for other checksums as they include just as much data, just not with a nice and catchy name. LP: 1098738
* | apt-pkg/deb/debindexfile.cc: do not hardcode dpkgMichael Vogt2014-05-081-1/+2
| |
* | Merge remote-tracking branch 'mvo/feature/build-dep-dsc2' into ↵Michael Vogt2014-05-085-3/+116
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | debian/experimental Conflicts: apt-pkg/deb/debindexfile.cc apt-pkg/deb/debindexfile.h apt-pkg/deb/debsrcrecords.cc
| * | add support for apt-get build-dep unpacked-source-dirMichael Vogt2014-04-252-0/+19
| | |
| * | create debIFTypeDscFile typeMichael Vogt2014-04-244-3/+73
| | |
| * | add support for apt-get build-dep foo.dscMichael Vogt2014-04-222-0/+26
| | |
* | | Merge remote-tracking branch 'mvo/feature/apt-install-deb' into ↵Michael Vogt2014-05-077-8/+236
|\ \ \ | | | | | | | | | | | | debian/experimental
| * | | use flAbsPath()Michael Vogt2014-04-281-2/+1
| | | |
| * | | use new Popen()Michael Vogt2014-04-281-10/+13
| | | |
| * | | avoid deb specific code in private-installMichael Vogt2014-04-281-0/+20
| | | |
| * | | WIP local deb installMichael Vogt2014-04-287-8/+214
| |/ /
* | | Merge branch 'debian/sid' into debian/experimentalMichael Vogt2014-05-0716-124/+353
|\ \ \ | | |/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: apt-pkg/cachefilter.h apt-pkg/contrib/fileutl.cc apt-pkg/contrib/netrc.h apt-pkg/deb/debsrcrecords.cc apt-pkg/init.h apt-pkg/pkgcache.cc debian/apt.install.in debian/changelog
| * | Only do openpty() if both stdin/stdout are terminalsMichael Vogt2014-04-301-5/+6
| | | | | | | | | | | | Closes: 746434
| * | reduce delta from ubuntuMichael Vogt2014-04-251-1/+1
| |/
| * do not crash on SIGPIPE in pkgDPkgPM::RunScriptsWithPkgs()Michael Vogt2014-04-011-7/+18
| | | | | | | | | | If a external command closes the PIPE unexpectedly, do not crash in pkgDPkgPM::RunScriptsWithPkgs but ignore the SIGPIPE.
| * Add new Debug::RunScripts optionMichael Vogt2014-04-011-0/+4
| | | | | | | | | | This debug option will display all scripts that are run by apts RunScripts and RunScriptsWithPkgs helpers.
| * ensure proper teardown in dpkg error casesDavid Kalnischkies2014-03-221-17/+7
| | | | | | | | | | | | | | | | | | | | | | | | We have to properly close our pseudo terminals even in error cases before we call post-invoke scripts. This is done now by breaking from the dpkg calling loop instead of copying the handling, which did it in the wrong order before. This also ensures that our state file is written in error cases to record autobit and co as this was forgotten before. Closes: 738969
| * mark optional (private) symbols as hiddenDavid Kalnischkies2014-03-211-1/+2
| | | | | | | | | | | | | | | | This methods should not be used by anyone expect the library itself as they are helpers for the specific class and therefore perfect candidates for hidding. Git-Dch: Ignore
| * abstract version hash comparison a bitDavid Kalnischkies2014-03-132-0/+24
| | | | | | | | | | | | | | | | In #737085 we see that apt can be confused if informations about versions only differ slightly. This commit adds a way of at least adding a few more data points with the next abi break to help a bit with it. Git-Dch: Ignore
| * factor out parsing of MultiArch flagDavid Kalnischkies2014-03-132-21/+29
| | | | | | | | Git-Dch: Ignore
| * follow method attribute suggestions by gccDavid Kalnischkies2014-03-134-13/+13
| | | | | | | | | | Git-Dch: Ignore Reported-By: gcc -Wsuggest-attribute={pure,const,noreturn}
| * cleanup headers and especially #includes everywhereDavid Kalnischkies2014-03-1316-41/+139
| | | | | | | | | | | | | | | | Beside being a bit cleaner it hopefully also resolves oddball problems I have with high levels of parallel jobs. Git-Dch: Ignore Reported-By: iwyu (include-what-you-use)
| * warning: unused parameter ‘foo’ [-Wunused-parameter]David Kalnischkies2014-03-133-4/+4
| | | | | | | | | | Reported-By: gcc -Wunused-parameter Git-Dch: Ignore
| * warning: useless cast to type A [-Wuseless-cast]David Kalnischkies2014-03-131-1/+1
| | | | | | | | | | Git-Dch: Ignore Reported-By: gcc -Wuseless-cast
| * fix -Wmissing-field-initializers warningsDavid Kalnischkies2014-03-131-4/+4
| | | | | | | | | | Reported-By: gcc Git-Dch: Ignore
| * support DEB_BUILD_PROFILES and -P for build profilesDavid Kalnischkies2014-03-131-1/+1
| | | | | | | | | | | | | | | | | | | | Inspired by the rest of the patch in 661537, but abstract the parsing of various ways of setting the build profiles more so it can potentially be reused and all apt parts have the same behaviour. Especially config options, cmdline options and environment will not be combined as proposed as this isn't APTs usual behaviour and dpkg doesn't do it either, so one overrides the other as it normally does.
| * implement BuildProfileSpec support as dpkg has in 1.17.2Johannes Schauer2014-03-133-9/+101
| | | | | | | | | | | | | | | | Build-dependencies are now able to include a <profile.foo …> specification limiting usage similar to already supported [arch …]. More details: https://wiki.debian.org/BuildProfileSpec Closes: 661537
* | Merge branch 'debian/sid' into debian/experimentalMichael Vogt2014-02-278-306/+495
|\| | | | | | | | | | | | | | | Conflicts: apt-private/private-list.cc configure.ac debian/apt.install.in debian/changelog
| * Fix typos in documentation (codespell)Michael Vogt2014-02-223-4/+4
| |
| * restart debSrcRecordParsers only if neededDavid Kalnischkies2014-01-301-3/+3
| | | | | | | | | | | | | | | | | | | | The offset variable in DebSrcRecordParser was not initialized which we now do and based on it do not trigger a restart if the parser was not used yet avoiding a needless rescan of the section. Detected while working on the previous commit e62aa1dd. Both commits act as a "fix" for the bug shown in the testcase of the commit – this one here would only hide it through.
| * Merge remote-tracking branch 'donkult/debian/sid' into debian/sidMichael Vogt2014-01-261-6/+3
| |\ | | | | | | | | | | | | | | | | | | Conflicts: apt-private/private-list.cc doc/po/de.po test/integration/framework
| | * correct some style/performance/warnings from cppcheckDavid Kalnischkies2014-01-161-6/+3
| | | | | | | | | | | | | | | | | | | | | | | | The most "visible" change is from utime to utimensat/futimens as the first one isn't part of POSIX anymore. Reported-By: cppcheck Git-Dch: Ignore
| * | do not ignore ioctl(TIOCSCTTY) errorsMichael Vogt2014-01-181-9/+19
| |/ | | | | | | | | Show a proper error message when a ioctl() in dpkgpm.cc fails. Also simply StartPtyMagic() a bit.
| * Merge branch 'debian/sid' into bugfix/bts731738-fancy-progessMichael Vogt2013-12-281-3/+7
| |\ | | | | | | | | | | | | Conflicts: apt-pkg/install-progress.cc