ChangeLog.ipkg 77 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761
  1. 2006-05-30 pigi ( pigi@frumar.it)
  2. * Version update to 0.99.163
  3. * Fixed a bug in GNU_TAR_EXTENSION of unarchive.c. This fix #1666
  4. 2006-05-04 pigi ( pigi@frumar.it)
  5. * Fixed a little bug in makefile that inhibit the compilation from .tar.gz ( missing intercept dir )
  6. 2006-04-20 pigi ( pigi@frumar.it)
  7. * Version update to 0.99.162
  8. * Fixed a bad bug introduced in .160 that was blocking the install of a package
  9. 2006-04-18 pigi ( pigi@frumar.it)
  10. * Version update to 0.99.161
  11. 2006-04-18 pigi ( pigi@frumar.it)
  12. * Another little fix for the upgrade part.Now alse the prerm and postrm scripts gets deleted before upgrading.
  13. wishing this fix the last troubles in upgrade part.
  14. * Fix for #1585 after the bug introduced with the modify for offline root. ( Again )
  15. 2006-03-30 pigi ( pigi@frumar.it)
  16. * Activated the patch from Gunter@ohrner.net for the md5 check of package
  17. * Another change in the upgrade part, to handle the ghosts files from an upgraded package
  18. 2006-03-30 pigi ( pigi@frumar.it)
  19. * Version update to 0.99.160
  20. * Fix for #1585 after the bug introduced with the modify for offline root.
  21. * Patch from Gunter@ohrner.net that fix a memory leak
  22. * Not yet activated, but inserted a patch from Gunter@ohrner.net for the md5 check of package
  23. 2006-02-06 pigi ( pigi@frumar.it)
  24. * Version update to 0.99.159
  25. * Another change in the upgrade part, to handle the ghosts files from an upgraded package
  26. * Now it should be ok. Thanks to pb_ for pointing out where to look at.
  27. 2006-02-02 pigi ( pigi@frumar.it)
  28. * Version update to 0.99.158
  29. * Modified the way upgrade handle the removing of a package, to be sure that ipkg doesn't break busybox upgrade
  30. * this should fix #1503
  31. 2006-01-30 pigi ( pigi@frumar.it)
  32. * applied patch from pb_ for speed up things in boot ( to avoid multiple configure execution )
  33. * applied patch from <r.schwebel@pengutronix.de> for 100+ filenames in tar file ( again )!
  34. * applied patch from <r.schwebel@pengutronix.de> to avoid trouble in offlineroot installations.
  35. 2006-01-22 pigi ( pigi@frumar.it)
  36. * Version update to 0.99.157
  37. 2006-01-17 pigi ( pigi@frumar.it)
  38. * Added a check to avoid reading feed files with several options. This should fix #1458 and speed up a lot of executions.
  39. 2006-01-12 pigi ( pigi@frumar.it)
  40. * Version update to 0.99.156
  41. * Fixed a length problem for strncpy when "Installing" option added. This fix bug #1456. Thanks to hrw for signaling
  42. 2005-12-15 pigi ( pigi@frumar.it)
  43. * Version update to 0.99.155
  44. * Added a function to remove the package that is being upgraded.
  45. * Fixed a problem when installing by hand. Now ipkg knows that a package has been selected by hand,
  46. * and, if every check returns ok, it install the wanted package, instead of selecting one from feed.
  47. * Moreover, now downgrade should works again.
  48. * Fixed the "Replaces" bug. Now ipkg is able to replace a package also if it doesn't conflict.
  49. * Other minor changes in debug options
  50. 2005-09-15 pigi ( pigi@frumar.it)
  51. * Version update to 0.99.154
  52. * Corrected a problem when removing a package, caused by an off by one alignement with the "Provides:" String
  53. * Patched for the "depends:" bug introduced after the "Provides:" fix. This fix #1393
  54. * Added a little fix for an off-by-one error in checking for depends.
  55. 2005-07-29 pigi ( pigi@frumar.it)
  56. * Applied a patch for the GNU tar compatibility . Now ipkg can handle filenames > 100 char.
  57. 2005-07-29 pigi ( pigi@frumar.it)
  58. * Version update to 0.99.153
  59. * Fixed a problem with Provides:. Now ipkg is able to install foo when foo is provided by bar, and is able to determine the best candidate based on
  60. * package name. This also fix #1328
  61. 2005-07-06 pigi ( pigi@frumar.it)
  62. * Version update to 0.99.152
  63. * Fixed a length problem for strncpy after "Downgrading" option added. This fix bug #1373. Thanks to steven.scholz@imc-berlin.de for signaling
  64. 2005-06-16 pigi ( pigi@frumar.it)
  65. * Version update to 0.99.151
  66. * Fixed a missing check for null pointers . This fix bug #1358
  67. 2005-06-05 pigi ( pigi@frumar.it)
  68. * Version update to 0.99.150
  69. * Added the -force-downgrade option to allow the downgrade of a package
  70. 2005-05-11 pigi ( pigi@frumar.it)
  71. * Version update to 0.99.149
  72. * Added the possibility to choice the ipkglibdir from configure ( --with-libipkgdir )
  73. 2005-04-10 pigi ( pigi@frumar.it)
  74. * Version update to 0.99.148
  75. 2005-04-09 pigi ( pigi@frumar.it)
  76. * Found a bug in output from error_list. Now every error is printed, also if the functions don't return an error.
  77. * Added a patch to Makefile from Robert Schwebel <r.schwebel@pengutronix.de>, cleaning things a bit. Thanks to Schwebel
  78. 2005-03-30 pigi ( pigi@frumar.it)
  79. * Version update to 0.99.147
  80. * Found a bug in ipkg_install when freeing a cursor
  81. 2005-03-28 pigi ( pigi@frumar.it)
  82. * Version update to 0.99.146
  83. * Modified the ipkg_error messaging to collect all the messages at the end of the program
  84. 2005-03-26 pigi ( pigi@frumar.it)
  85. * Little bug in message when "depends broken"
  86. 2005-03-14 pigi ( pigi@frumar.it)
  87. * Version update to 0.99.145
  88. * Found a bug in ipkg remove when a package was depending in itself and ipkg where asked to "-recursive"
  89. This fix bug # 1301
  90. * A very little beautify in args.c
  91. 2005-03-07 pigi ( pigi@frumar.it)
  92. * Added the check for md5 in resolv_conf_file. Now ipkg ask for confirmation only it the files differ
  93. 2005-02-22 pigi ( pigi@frumar.it)
  94. * Version update to 0.99.144
  95. * A little fix suggested by drw in ipkg_conf.c
  96. * Changed the ipkg.h to be build in automake for oe mechanism . This will enhance the building phase
  97. by honouring the lib hierarchy choose by users
  98. * Changes in automake to honour the new building mechanism
  99. 2005-02-20 pigi ( pigi@frumar.it)
  100. * Version update to 0.99.143
  101. * libipkg.h: reverting the previous modify
  102. * ipkg_conf.c: fixing a probable bug in list_dir that fix problems with opie-packagemanager ( tanks to drw for signaling)
  103. 2005-02-20 pigi ( pigi@frumar.it)
  104. * libipkg.h: added some define to fix the broken external interface after 0.99.139 and lists_dir
  105. 2005-02-17 pigi ( pigi@frumar.it)
  106. * pkg_depends.c: applied patch from rjt@cambridgebroadband.com to remove some c99ism
  107. 2005-02-06 pigi ( pigi@frumar.it)
  108. * Version update to 0.99.142
  109. * Fixed the definition of full_write and full_read as per bug #1280
  110. 2005-02-06 pigi ( pigi@frumar.it)
  111. * Version update to 0.99.141
  112. * Added space in ipkg_message to give more readible messages
  113. * Corrected a problem when creating the directories in pkg_dest_init
  114. 2005-02-05 pigi ( pigi@frumar.it)
  115. * Version update to 0.99.140
  116. * Fixed the bug in ipkg_conf for a wrong pointer.
  117. 2005-02-05 pigi ( pigi@frumar.it)
  118. * Version update to 0.99.139
  119. * Fixed the "replaces" problem reported by pb_. Now ipkg is able to resolve a "replace/conflict" reference
  120. * Added the possibility to keep the lists file in a different location. Fullfill enh #1276
  121. 2005-02-02 pigi ( pigi@frumar.it)
  122. * Fixed the problem for SW_DEINSTALL in remove. Fix #1274
  123. * Fixed the problem issued from florian. This also fix the bug #520 HardLink are now supported
  124. 2005-01-18 pigi ( pigi@frumar.it)
  125. * Version update to 0.99.138
  126. * libbb.h: patch for the uclib
  127. 2005-01-14 pigi ( pigi@frumar.it)
  128. * ipkg_install.c: applied patch from rjt@cambridgebroadband.com to remove some c99ism
  129. 2005-01-14 jamey ( jamey@handhelds.org )
  130. * pkg_hash.c: applied patch from Jean Tourrilhes to allow default
  131. arch to be different than host arch
  132. 2005-01-10 pigi ( pigi@frumar.it)
  133. * Version update to 0.99.137
  134. * fixed a little, but annoying bug when writing the status file.
  135. 2005-01-10 pigi ( pigi@frumar.it)
  136. * Version update to 0.99.136
  137. * Lot of memory leak fixes from Benjamin Pineau <ben@zouh.org>
  138. * Fix for the Provides, that weren't able to "protect" their dependants while removing.
  139. Now the remove should be safer.
  140. * removed the replace.h stuff from automake .ac/.in files. This should align to oe
  141. 2005-01-06 pigi ( pigi@frumar.it)
  142. * Version update to 0.99.135
  143. * Various fix for dependencies in control files
  144. 2005-01-06 pigi ( pigi@frumar.it)
  145. * Version update to 0.99.134-1 for fixing a problem with cvs tag on previous version
  146. 2005-01-06 pigi ( pigi@frumar.it)
  147. * Version update to 0.99.134
  148. * Added a new option for listing only the installed packages. Asked by pb_ but really important
  149. * Little modification to autoconfigure.sh
  150. * removed fileutils dependencies that has disappeared from 0.8 in control-cl.in control-unstripped.in libipkg-control.in
  151. 2004-11-18 pigi ( pigi@frumar.it)
  152. * Version update to 0.99.133
  153. * Fix for preserve date and time when extracting a package. Thanks to <trevor.pering@intel.com>
  154. 2004-10-07 pigi ( pigi@frumar.it)
  155. * Version update to 0.99.132
  156. * Little fix on available blocks calculation. Thanks to seved.torstendahl@netinsight.se for founding it.
  157. * this fix #1259
  158. 2004-09-20 pigi ( pigi@frumar.it)
  159. * Version update to 0.99.131
  160. * Added a lot of debug info in DEBUG2
  161. * Added a check in ipkg_install.c to permit replacing of existing file when installing a package
  162. * from a file ( not an upgrade ) when ipkg find a file clash but the owner of the package is the
  163. * same. That should fix the #1246
  164. 2004-09-02 pigi ( pigi@frumar.it)
  165. * Version update to 0.99.130
  166. * Added patch from pb_ for bug #1251. A lot of thanks to Phil
  167. 2004-09-02 pigi ( pigi@frumar.it)
  168. * Some changes on output messages to be a little bit clear
  169. 2004-09-01 pigi ( pigi@frumar.it)
  170. * Applied patches from pb_ (bug #1244)
  171. * Added EXTRADIST = ipkg.c and others in Makefile.am as in ipkg.0.99.xxx.tar.gz the ipkg.c was missing. (
  172. reported by odvard12@yahoo.com )
  173. * Version update to 0.99.129
  174. 2004-08-19 Florian <florian.boor@kernelconcepts.de>
  175. * Version update to 0.99.128
  176. * libipkg.c, ipkg_cmd.c: Fixed return value zero if installation
  177. failed. Changed text because failing to install a package
  178. is not necessarily a bug :-)
  179. * Makefile.in, libbb/Makefile.in: Removed autogenerated files.
  180. 2004-08-18 Florian <florian.boor@kernelconcepts.de>
  181. * Two more fixed memory leaks. Contributed by Nils Faerber.
  182. 2004-08-17 Florian <florian.boor@kernelconcepts.de>
  183. * Fix to avoid major memory leak due to multiple initialising
  184. of hash tables. Contributed by Nils Faerber.
  185. 2004-07-20 pigi ( pigi@frumar.it)
  186. * configure.ac: updated to 0.99.127
  187. * Applied patch from tmbinc@elitedvb.net (Felix Domke) to fix some problems when in use on platforms
  188. * different from arm. Fixes big #1234
  189. 2004-06-15 pigi ( pigi@frumar.it)
  190. * configure.ac: updated to 0.99.126
  191. 2004-06-12 florian <florian.boor@kernelconcepts.de>
  192. * Makefile.am: Added some missing headers to the list.
  193. * libipkg.pc.in: Fixed hardcoded prefix... tsts
  194. 2004-06-12 pigi ( pigi@frumar.it)
  195. * pb_ patch for setuid bit in unarchive
  196. 2004-06-05 pigi ( pigi@frumar.it)
  197. * configure.ac: updated to 0.99.125
  198. * modified almost all reference to xregexec in fnmatch ( as adviced by zap).
  199. This should fix every problem with strange character in package name when using regex in functions
  200. ( as per info_status_cmd or remove ). #1220
  201. 2004-05-21 pigi ( pigi@frumar.it)
  202. * configure.ac: updated to 0.99.124
  203. * import the kergoth patch for Makefile.am to fix the linking problems on arch <> arm
  204. * added the ipkg remove <regexp> feature.
  205. * fixed the ipkg usage message, 'cause in "ifdef LIBIPKG" we don't have the ipkg info field version.
  206. * added the message "No package removed" if no package has been removed. This to avoid misunderstanding
  207. with the successfully done message at the exit of execution.
  208. 2004-05-16 pigi ( pigi@frumar.it)
  209. * configure.ac: updated to 0.99.122-3
  210. * Anothere little fix. Added the version number in control.in. This should fix definitelly the problem with dependencies
  211. 2004-05-16 pigi ( pigi@frumar.it)
  212. * configure.ac: updated to 0.99.122-2
  213. * New subrelease released to correct the problem for dependencies (libipkg >= 0.99.122-1) in ipkg control file
  214. 2004-05-14 pigi ( pigi@frumar.it)
  215. * configure.ac: updated to 0.99.122-1
  216. * needed for a recompilation with the libtool updated. This could fix the #1209 created by my old libtool version
  217. * cleaned the cvs dir by removing the really unneeded busybox directory
  218. 2004-05-10 pigi ( pigi@frumar.it)
  219. * configure.ac: updated to 0.99.122
  220. * pb_, cworth and I discussed a bit on ipkg output to users. We agreed on removing some confusing
  221. * messages, moving them to a debug level of verbosity.
  222. * I do added also some message to user indicating the phase ipkg is in, and a global ending message
  223. * informing the user for the status of operation.
  224. * This fixes the #1206, and hopefully does not introduce others ;-)
  225. 2004-05-03 pigi ( pigi@frumar.it)
  226. * configure.ac: updated to 0.99.121
  227. * reenoo__ found a problem with depend lines > 1023, and pb fixed it. Thanks to both,
  228. * This should fix #1204.
  229. 2004-04-08 pigi ( pigi@frumar.it)
  230. * configure.ac: updated to 0.99.120
  231. * pb found another one. The configure cmd now will set the correct values in status file
  232. * #1196 fixed
  233. 2004-04-07 pigi ( pigi@frumar.it)
  234. * configure.ac: updated to 0.99.119
  235. * pb found another one. Commiting his patch, elegant as usual :)
  236. 2004-03-29 jamey ( jamey@handhelds.org)
  237. * configure.ac: updated to 0.99.118
  238. 2004-03-29 pigi ( pigi@frumar.it)
  239. * pb_ asked me to have a command to change the status of a package betwenn installed and unpacked.
  240. and I did it.
  241. * I' ve also included the fix for the empty lists as for bug # 1136 reported and suggested by k.vangelder@chello.nl
  242. 2004-03-17 pigi ( pigi@frumar.it)
  243. * Added the implement for Essential in status file. This is needed to avoid the unintentional remove
  244. of essential packages. In effect the command "ipkg remove ipkg" worked without problems, but then
  245. it was difficult to reinstall. This fix the bug # 867
  246. 2004-03-15 jamey <jamey@handhelds.org>
  247. * configure.ac: updated to 0.99.117
  248. 2004-03-10 pigi ( pigi@frumar.it)
  249. * Added the check for *alloc in every source. I needed to modify some function ehre and there
  250. to check the return values from function allocating memory, but hopefully it should be all right now.
  251. * Added the check for at least a package for remove ( it was removing everithing if no pkgname followed the
  252. remove option.
  253. 2004-03-09 pigi ( pigi@frumar.it)
  254. * Added a flag to disble the checking of directories when the command does not need to
  255. read anything from there. Fix bug #1096
  256. 2004-03-09 pigi ( pigi@frumar.it)
  257. * Changes to correct the behaviour of verbosity. Now the "0" works, and the "1" is again
  258. the default.
  259. This fixes the bug #1099
  260. 2004-03-07 pigi ( pigi@frumar.it)
  261. * Minimal changes for a clean compile in libipkg.c ( so we can close the bug# 1119 )
  262. 2004-03-03 pigi ( pigi@frumar.it)
  263. * Missing \n in Size and Source Fields.
  264. 2004-03-03 pigi ( pigi@frumar.it)
  265. * Florian noticed a free missiing in ipkg_cmd.c ( should sleep more at night )
  266. it was in an (almost) unsed part of the code ( old code ) but, just in case...
  267. * Changed a comment in pkg.c ( it was in italian ) and added a bit of explain in
  268. pkg_formatted_field
  269. 2004-03-02 jamey <jamey@handhelds.org>
  270. * configure.ac: updated to 0.99.116
  271. * pkg.h: from Pigi: pkg_formatted_info and pkg_formatted_field now allocate the strings they fill in
  272. * pkg.c, ipkg_cmd.c: from Pigi: updated to the new pkg.h interface
  273. 2004-02-29 florian <florian.boor@kernelconcepts.de>
  274. pkg.c: Pigi and me poked around a little bit and located the cause of
  275. latest segfault. strncat is not used correctly in pkg_formatted_info
  276. and pkg_formatted_field. I added a fix to the only section that
  277. triggered the bug and increased a buffer size.
  278. BUT: There are many similar bugs remaining!
  279. 2004-02-24 jamey <jamey@handhelds.org>
  280. * configure.ac: updated to 0.99.115
  281. * ipkg_cmd.c: segv caught by pigi: buffer freed in loop but used on next iterations. bug squashed.
  282. * user.c: realloc question buffer if it is too short so that messages are not truncated.
  283. 2004-02-20 jamey <jamey@handhelds.org>
  284. * configure.ac: updated to 0.99.114
  285. * libbb/unarchive.c: patch from pigi@frumar.it: fix erroneous invalid header checksum message
  286. 2004-02-19 jamey <jamey.hicks@hp.com>
  287. * configure.ac: update to 0.99.113
  288. * libipkg.c: patch from drw to fix ipkg list
  289. 2004-02-19 florian <florian.boor@kernelconcepts.de>
  290. * Some minor changes to make code compile on more compilers.
  291. 2004-02-14 jamey <jamey.hicks@hp.com>
  292. * configure.ac: updated to 0.99.112
  293. * libbb/unarchive.c: copied in oldgnu tar compatibility mode from latest busybox.
  294. 2004-02-13 jamey <jamey.hicks@hp.com>
  295. * configure.ac: updated to 0.99.111
  296. * pkg.c: wim delvaux's patch for status file in other destinations
  297. 2004-01-23 florian <florian.boor@kernelconcepts.de>
  298. * Applied Dan's patch that adds a package download command to
  299. libipkg.
  300. 2004-01-20 florian <florian.boor@kernelconcepts.de>
  301. * Applied Dan's changes to work incuded from a C++ app.
  302. 2004-01-15 jamey
  303. * configure.ac: updated to 0.99.110
  304. * libipkg.c: added default callbacks for output
  305. * ipkg_conf.c: default verbosity to 1
  306. 2004-01-12 jamey
  307. * configure.ac: updated to 0.99.109
  308. * ipkg_install.c: fix potential segv sprintf_alloc with fewer args than required by format string (yay valgrind)
  309. * sprintf_alloc.c: add null pointer checking
  310. 2004-01-12 jamey
  311. * configure.ac: updated to 0.99.108
  312. * Makefile.am, familiar/: use ipkg-cl as default executable, install as ipkg via update-alternatives
  313. 2004-01-12 jamey
  314. * configure.ac: updated to 0.99.107
  315. * void_list.c: check for null data
  316. * pkg.c: check for null pointers
  317. 2003-12-23 florian <florian.boor@kernelconcepts.de>
  318. * Added void* parameter to some callbacks.
  319. 2003-12-02 florian <florian.boor@kernelconcepts.de>
  320. * Added familiar/ipkg-cl.control.in, which is a prototype of
  321. control file for ipkg-cl package creation.
  322. 2003-12-01 florian <florian.boor@kernelconcepts.de>
  323. * added ipkg command line tool using libipkg, binary is known as ipkg-cl
  324. * ipkg-frontend.c: source for this tool
  325. * libbb/Makefile.am: Removed changing of CFLAGS, this avoids a nasty warning.
  326. * Makefile.am: Same fix and addition of new target creating ipkg-cl.
  327. * removed ltmain.sh, libtool which seem to be created by autostuff
  328. 2003-12-01 jamey
  329. * configure.ac: updated to 0.99.106
  330. * pkg.c, ipkg_conf.c: check for null pointers (null pkg->dest in particular)
  331. 2003-11-11 jamey
  332. * configure.ac: updated to 0.99.105
  333. * ipkg_conf.c: added verbosity option to conf file
  334. 2003-11-11 jamey
  335. * configure.ac: updated to 0.99.104
  336. * ipkg_install.c: removed spurious calls to fflush, remove obsolete maintainer scripts on upgrade
  337. * ipkg_remove.c: remove unused function: remove_conffiles
  338. 2003-11-11 jamey
  339. * configure.ac: updated to 0.99.103
  340. * libipkg.pc.in, configure.ac: pkgconfig for libipkg
  341. * ipkg_conf.c, pkg.c: check for error on fopen
  342. * pkg_hash.c: reduced verbosity
  343. * libtool: arm-linux-strip does not support --strip-debug on .a files
  344. 2003-11-10 jamey
  345. * configure.ac: updated to 0.99.102
  346. * ipkg_cmd.c: compute architecture_priority of packages in database before doing download command
  347. * conffile.c file_util.[ch] ipkg_install.c: better separation of installation root filenames and actual filenames
  348. * pkg.h: added prototype for pkg_free_installed_files
  349. 2003-11-10 jamey
  350. * configure.ac: updated to 0.99.101
  351. * libipkg changes
  352. * generate .list files from file_hash
  353. 2003-11-05 jamey
  354. * configure.ac: updated to 0.99.100
  355. * ipkg_install.c: fix segv: was passing conflictee->parent instead of conflictee
  356. 2003-10-08 jamey
  357. * configure.ac: updated to 0.99.99
  358. * ipkg_install.c: use the root_dir after stripping off offline_root prefix
  359. 2003-10-08 jamey
  360. * configure.ac: updated to 0.99.98
  361. * pkg_hash.c: fixed segv if replaced_by->len was 0
  362. * ipkg_cmd.c: ipkg remove with no arguments will remove non-user leaf packages
  363. * ipkg_remove.[ch]: export pkg_has_installed_dependents
  364. * pkg_depends.c: add pkg->parent to pkg->provides
  365. * ipkg_install.c: strip offline_root prefix off of conffile name so comparing the md5sums should work
  366. * pkg.c: missing comma added
  367. 2003-10-01 jamey
  368. * configure.ac: updated to 0.99.97
  369. * ipkg_cmd.c: added whatdependsrec command to show what recursively depends on a package or packages
  370. * pkg_vec.[ch]: added pkg_vec_clear_marks and pkg_vec_mark_if_matches
  371. * args.c: usage string updated
  372. 2003-09-28 jamey
  373. * configure.ac: updated to 0.99.96
  374. * ipkg_conf.c: adjusted verbosity
  375. * ipkg_install.c: only remove replacee if it is also conflicted, per debian standard
  376. * pkg_depends.c: only add to replaced_by if it also conflicts, per debian standard
  377. added pkg_provides, pkg_replaces, pkg_conflicts
  378. * pkg_hash.c: adjusted verbosity
  379. 2003-09-28 jamey
  380. * configure.ac: updated to 0.99.95
  381. * args.[ch], ipkg_cmd.c, ipkg_conf.[ch], ipkg_download.c, ipkg_install.c, ipkg_remove.c, pkg.[ch]:
  382. Implemented -test mode for ipkg.
  383. 2003-09-28 jamey
  384. * configure.ac: updated to 0.99.94
  385. * pkg_hash.c: fix pkg_hash_fetch_best_installation_candidate so
  386. that one can install another provider of an installed package name
  387. 2003-09-26 jamey
  388. * configure.ac: updated to 0.99.93
  389. * ipkg_install.c: corrected message level depending on conf->force_depend
  390. * ipkg_conf.c: check for duplicate src entries
  391. * nv_pair_list.[ch]: added nv_pair_list_find
  392. 2003-09-16 jamey
  393. * configure.ac: updated to 0.99.92
  394. * pkg_depends.c: some paranoia to try to avoid segv
  395. * void_list.c: silenced message about elt not being found
  396. 2003-09-11 jamey
  397. * configure.ac: updated to 0.99.91
  398. * pkg_depends.c: added pkg_depend_str to fetch right kind of dependence string based on dependence index
  399. Use this in add_unresolved_dep.
  400. * pkg_depends.h: declaration of pkg_depend_str
  401. 2003-08-22 11:02 jamey
  402. * configure.ac: updated to 0.99.90
  403. * str_list.[ch]: added str_list_alloc(), added str_list_remove_elt()
  404. * void_list.[ch]: added void_list_remove_elt()
  405. * pkg_parse.c: added parsing of Source field
  406. * pkg_hash.c: updated old_pkg->installed_files list when setting file owner if it was previously owned by old_pkg
  407. * pkg_extract.c: use installed_file list if it exists in pkg_extract_data_file_names_to_file
  408. * pkg.[ch]: added pkg_write_filelist() and pkg_write_changed_filelists()
  409. * ipkg_remove.c: do not call ipkg_conf_write_status_files from ipkg_remove
  410. * ipkg_install.c: use ipkg_write_filelist()
  411. * ipgk_cmd.c: after writing status file, write any changed pkg filelists
  412. 2003-08-20 11:02 jamey
  413. * configure.ac: updated to 0.99.89
  414. * pkg.c: print Source field in pkg_print_info
  415. 2003-08-06 18:34 jamey
  416. * configure.ac: updated to 0.99.88
  417. * pkg_hash: bug 942, declare internal induction variable
  418. * ipkg_cmd.c, ipkg_conf.[ch], pkg_src.[ch], pkg_src_list.[ch]: bug 604, support Packages.gz
  419. 2003-08-06 18:34 jamey
  420. * configure.ac: updated to 0.99.87
  421. * pkg.c: remove extra printing of Suggests field
  422. * pkg_vec.c: merge Status field only from current database, rest of Package info from Packages files
  423. * pkg_depends.c: print info about recommendations as Notice instead of DEBUG
  424. 2003-07-11 18:34 jamey
  425. * configure.ac: updated to 0.99.86
  426. * ipkg.h, ipkg_cmd.c, ipkg_configure.c, ipkg_install.c, ipkg_remove.c: only write status file if something changed.
  427. 2003-07-11 18:34 jamey
  428. * configure.ac: updated to 0.99.85
  429. * pkg.c, pkg.h, pkg_depends.c, pkg_depends.h, pkg_parse.c: bug 885:
  430. add recommends and suggests
  431. * args.c, ipkg_cmd.c, ipkg_cmd.h: add ipkg configure command
  432. * pkg_vec.c: apply patch for bug 883
  433. 2003-05-11 Jamey Hicks <jamey@handhelds.org>
  434. * configure.ac: updated to 0.99.84
  435. * pkg.c, ipkg-compare-versions.c: fix problem where . and - were not treated as separators in version comparison
  436. 2003-04-11 Jamey Hicks <jamey@handhelds.org>
  437. * configure.ac: updated to 0.99.83
  438. * ipkg_install.c: use pkg->installed_size instead of pkg->size
  439. * ipkg_cmd.c, ipkg_conf.c: put lists under offline_root if specified
  440. 2003-04-11 Jamey Hicks <jamey@handhelds.org>
  441. * configure.ac: updated to 0.99.82
  442. * pkg_hash.c: ignore Replaces directive when a package replaces itself
  443. 2003-04-10 Jamey Hicks <jamey@handhelds.org>
  444. * configure.ac: updated to 0.99.81
  445. * pkg.c: clear state_want and state_flags for any uninstallable package
  446. 2003-04-10 Jamey Hicks <jamey@handhelds.org>
  447. * configure.ac: updated to 0.99.80
  448. * pkg.c: pkg_merge was intermingling depends and predepends from
  449. old and new pkg, and was ignoring conflicts and replaces
  450. * pkg_depends.c: cleaned up interface to parseDepends
  451. 2003-04-07 Jamey Hicks <jamey@handhelds.org>
  452. * configure.ac: updated to 0.99.79
  453. * pkg_hash.c: default architecture to host_cpu if unspecified
  454. * ipkg_install.c, ipkg_download.c: refuse to install package with no architecture
  455. 2003-04-07 Jamey Hicks <jamey@handhelds.org>
  456. * configure.ac: updated to 0.99.78
  457. * args.[ch], ipkg_conf.[ch]: added query_all (-A)
  458. * ipkg_cmd.c: finished implementing whatdepends, whatrequires, whatprovides, and whatconflicts
  459. 2003-04-03 Jamey Hicks <jamey@handhelds.org>
  460. * configure.ac: updated to 0.99.77
  461. * ipkg_cmd.c: implemented whatdepends
  462. * ipkg_conf.c: fixed typo
  463. 2003-04-03 Jamey Hicks <jamey@handhelds.org>
  464. * configure.ac: updated to 0.99.76
  465. * args.c: was zeroing args structure too late
  466. * ipkg_conf.c: test for existence of /etc/ipkg.conf before trying to load it
  467. 2003-04-03 Jamey Hicks <jamey@handhelds.org>
  468. * configure.ac: updated to 0.99.75
  469. * familiar/rules: update postinst only to generate ipaqarch.conf if none exists
  470. * args.[ch]: added -t or --tmp-dir option to specify tmp-dir
  471. 2003-04-03 Jamey Hicks <jamey@handhelds.org>
  472. * configure.ac: updated to 0.99.74
  473. * ipkg_cmd.c: avoid segv by only calling xregfree after xregcomp was called
  474. * pkg_hash.c: prefer pkgs that are marked hold/prefer, next
  475. abstract pkgs that are installed, next latest pkg if one provider,
  476. give up if multiple providers are acceptable -- let user decide
  477. 2003-04-03 Jamey Hicks <jamey@handhelds.org>
  478. * configure.ac: updated to 0.99.73
  479. * pkg_hash.c: remove latest_installed heuristic because it prevents upgrades.
  480. 2003-04-03 Jamey Hicks <jamey@handhelds.org>
  481. * configure.ac: updated to 0.99.72
  482. * pkg_hash.c: check for unresolved packages (apkg->provided_by->len == 0), better messages.
  483. 2003-04-03 Jamey Hicks <jamey@handhelds.org>
  484. * configure.ac: updated to 0.99.71
  485. * pkg.c: Added pkg_name_version_and_architecture_compare and abstract_pkg_name_compare
  486. * ipkg_cmd.c: allow multiple fields for info and status command.
  487. Allow posix regexp's for package name in status, info, and list
  488. commands.
  489. * pkg_remove.c: fixed type error
  490. * xregex.h: added xregfree
  491. * pkg_hash.c: Provides functionality seems to be working again
  492. 2003-04-02 Jamey Hicks <jamey@handhelds.org>
  493. * configure.ac: updated to 0.99.70
  494. * args.c, args.h, ipkg_conf.c, ipkg_conf.h, ipkg_install.c: implemented nodeps option
  495. * pkg_vec.[ch]: added [abstract_]pkg_vec_{contains,sort}
  496. * pkg.c: print which script not being run in offline root mode
  497. 2003-04-02 Jamey Hicks <jamey@handhelds.org>
  498. * configure.ac: updated to 0.99.69
  499. * pkg_vec.c: compare architecture to architecture, not to name
  500. * ipkg_utils.c: do not exit, instead return NULL
  501. * ipkg_install.c: do not exit, instead return -EINVAL
  502. * ipkg_download.c: make sure to set pkg dest
  503. * ipkg_cmd.c: notice instead of info for writing status file message
  504. 2003-04-02 Jamey Hicks <jamey@handhelds.org>
  505. * configure.ac: updated to 0.99.68
  506. * pkg_vec.c, pkg_depends.c: pkg_t's are the same if they have same name, version, and architecture
  507. 2003-04-01 Jamey Hicks <jamey@handhelds.org>
  508. * configure.ac: updated to 0.99.67
  509. * ipkg_install.c: one last check for supported architecture in ipkg_install_pkg
  510. * pkg.c: make pkg_print_field less fragile by using strcasecmp,
  511. added support to print Conflicts
  512. * pkg_hash.c: if multiple candidates with right architecture
  513. satisfy constraint_fcn, return latest version
  514. * ipkg_cmd.c: when verbosity > 1, show if conffiles have been
  515. modified in info command
  516. * hash_table.c, hash_table.h: count number of elements in hash
  517. tables
  518. * file_util.c: explicitly use unsigned char
  519. * conffile.c: more debugging info
  520. 2003-04-01 Jamey Hicks <jamey@handhelds.org>
  521. * configure.ac: updated to 0.99.66
  522. * pkg_depends.c: fixed what seemed to be glaring deficiency in version_constraints_satisfied
  523. * pkg_hash.c: more debug info
  524. * pkg_parse.c, pkg.c: added Installed-Time as field saved to status file
  525. 2003-04-01 Jamey Hicks <jamey@handhelds.org>
  526. * configure.ac: updated to 0.99.65
  527. * ipkg_cmd.c, ipkg_conf.c: applied ipkg dest installation patch from Ben Lau <benlau@linux.org.hk>
  528. * ipkg_cmd.c: fixed probably segv when using offline_root, fixed problem installing from local file.
  529. * ipkg_conf.c:
  530. - Do not add default architectures if ipkg configuration files include architecture definitions.
  531. - Look for /etc/ipkg/*.conf under offline root if using offline root mode
  532. * void_list.h: added void_list_empty()
  533. * nv_pair_list.h: added nv_pair_list_empty()
  534. 2003-03-28 14:30 Jamey Hicks <jamey@handhelds.org>
  535. * configure.ac: 0.99.64
  536. * pkg_hash.c: change fprintf stderr to ipkg_message
  537. * pkg.h: added SF_MARKED and abstract_pkg_t state_flag field
  538. * pkg.c: include Provides, Replaces, and Architecture in status
  539. file
  540. * ipkg_remove.c: make sure to print each dependent package only
  541. once
  542. * ipkg_message.h: added IPKG_DEBUG2
  543. * ipkg_install.c: modify message and level depending on
  544. force_depends
  545. * ipkg_cmd.c: call pkg_info_preinstall_check before any
  546. install/upgrade/remove action
  547. * ChangeLog, autoconfigure.sh, includes.h,
  548. ipkg_conf.c, ipkg_remove.c, pkg.c, pkg.h, update-alternatives,
  549. xregex.h: applied kergoth's update-alternatives patch
  550. * ipkg_cmd.c, ipkg_remove.c: remove maybe_broken_removal... which
  551. was an expensive no-op; before removing package, make sure that
  552. nothing is installed that depends on the apkgs **provided** by a
  553. package
  554. * pkg.h: mark for future cleanup
  555. * ChangeLog: 0.99.62, adds architecture priority, better handling
  556. of file obsolescence and package replacements in progress
  557. 2003-03-27 18:26 jamey
  558. * autoconfigure.sh: accidentally committed /usr/local/bin calls
  559. * ipkg_conf.c: needed a strdup, set default verbosity back to 0
  560. * familiar/postinst: default architecture priorities
  561. * Makefile.in, autoconfigure.sh, ipkg_cmd.c, ipkg_conf.c, pkg.c:
  562. both name and value in nv_pair_list must be actual strings
  563. * pkg_hash.c: do not try to invoke NULL constraint_fcn
  564. * ipkg_install.c: added file_hash_{set,get}_file_owner, created
  565. check_downgrade
  566. * ipkg_conf.c, ipkg_conf.h, ipkg_remove.c, pkg.c, pkg_hash.c,
  567. pkg_hash.h: added file_hash_{set,get}_file_owner
  568. * hash_table.c: check for key already being present in
  569. hash_table_insert
  570. * configure.ac: update to 0.99.63
  571. * ipkg_hash_test.c: update due to new prototypes
  572. * ipkg_conf.c: missed a conversion from str_list to nv_pair_list
  573. * ipkg_install.c: minor tweaks
  574. * pkg.c, pkg.h: added pkg_info_preinstall_check to update
  575. pkg->arch_priority
  576. * pkg_depends.c, pkg_depends.h: use constrained
  577. pkg_hash_fetch_best_installation_candidate in
  578. pkg_hash_fetch_unsatisfied_dependencies
  579. * pkg_hash.c, pkg_hash.h, ipkg_cmd.c, ipkg_upgrade.c: split
  580. pkg_hash_fetch_best_installation_candidate into a by name and a
  581. constrained version
  582. * ipkg_install.c: block SIGINT while doing core of package
  583. installation (single package)
  584. * ipkg_conf.c, ipkg_conf.h: support for architecture priority
  585. * pkg_depends.c: cleanup, reindent
  586. * pkg.c, pkg.h: support for architecture_priority
  587. * ipkg_cmd.c: installed SIGINT handler when upgrading or removing,
  588. support for architecture_priority
  589. * pkg_hash.c: added support for architecture priority, reindented
  590. * pkg_vec.c: minor cleanup
  591. 2003-03-24 Jamey Hicks <jamey@handhelds.org>
  592. * configure.ac: updated to 0.99.61
  593. * familiar/postinst: mkdir -p /etc/ipkg
  594. 2003-03-24 Jamey Hicks <jamey@handhelds.org>
  595. * configure.ac: updated to 0.99.61
  596. * ipkg_conf.c: read configuration from all *.conf files in /etc/ipkg/
  597. * familiar/postinst: create /etc/ipkg/*.conf according to platform ipkg is installed on
  598. 2003-03-20 Jamey Hicks <jamey@handhelds.org>
  599. * configure.ac: updated to 0.99.60
  600. * various: added support for package architectures
  601. * configure.ac: do not test for malloc
  602. 2003-03-17 Aman Gupta <ipkg@themastermind1.net>
  603. * configure.ac: updated to 0.99.59
  604. * args.c: show all verbosity levels in usage info
  605. * args.h: changed default verbosity level to 1
  606. * ipkg_cmd.c: ipkg_multiple_files_scan() was useless, switch to using
  607. ipkg_prepare_url_for_install()
  608. * ipkg_install.c: fix --force-reinstall
  609. * ipkg_remove.c: stop removing of modified conffiles
  610. 2003-03-04 Jamey Hicks <jamey@handhelds.org>
  611. * configure.ac: updated to 0.99.56
  612. * ipkg_message.c: show error messages by default
  613. * ipkg_message.h: protect against multiple inclusion
  614. * conffile.[ch]: switch to ipkg_message, added conf argument to conffile_has_been_modified
  615. * ipkg.h: move EXTENSION macros here
  616. * pkg_depends.c: minor cleanup
  617. * pkg.h: added prefer and obsolete flags
  618. * pkg.c: parse and unparse SF_PREFER and SF_OBSOLETE
  619. * ipkg_install.[ch]:
  620. - added {pkg,name}_mark_dependencies_for_installation,
  621. - added conf argument to conffile_has_been_modified
  622. - missing ifdef IPKG_DEBUG_NO_TMP_CLEANUP
  623. * ipkg_remove.c: added conf argument to conffile_has_been_modified
  624. * ipkg_download.c: added ipkg_prepare_for_install
  625. 2003-03-01 Jamey Hicks <jamey@handhelds.org>
  626. * configure.ac: updated to 0.99.55
  627. * ipkg.h: wrap #if 0 around definition of of IPKG_DEBUG_NO_TMP_CLEANUP
  628. 2003-03-01 Jamey Hicks <jamey@handhelds.org>
  629. * configure.ac: updated to 0.99.54
  630. * ipkg_install.c: make old package SW_DEINSTALL during ipkg installation
  631. * ipkg_cmd.[ch]: added some code to install packages marked SW_INSTALL, but have not enabled this code yet.
  632. 2003-03-01 Jamey Hicks <jamey@handhelds.org>
  633. * configure.ac: updated to 0.99.53
  634. * pkg_depends.c: let SW_INSTALL satisfy dependences (instead of SS_INSTALL)
  635. 2003-03-01 Daniele Nicolodi <daniele@grinta.net>
  636. * ipkg_install.c: indentation fixes and finish switch to message
  637. facility
  638. * ipkg_cmd.c: indentation fixes, switch to message facility and
  639. some code cleanup
  640. * ipkg_message.c (ipkg_message): check for a NULL *conf parameter
  641. * ipkg_message.h: renamed IPKG_ERR in IPKG_ERROR
  642. 2003-02-28 Jamey Hicks <jamey@handhelds.org> (patch from Daniele Nicolodi <daniele@grinta.net>)
  643. * configure.ac: incremented version to 0.99.5
  644. * ipkg_message.[ch]: added message facility
  645. * args.[ch]: verbosity control
  646. * ipkg_conf.[ch]: verbosity control
  647. * ipkg_install.c: switch to using message factility
  648. 2003-02-28 Jamey Hicks <jamey@handhelds.org>
  649. * configure.ac: incremented version to 0.99.51
  650. * ipkg_cmd.c: added ipkg_statisfy_all_dependences, called after
  651. install/upgrade of packages to handle packages that were split and
  652. no longer provide all the resources they used to provide.
  653. 2003-02-27 Jamey Hicks <jamey@handhelds.org>
  654. * configure.ac: incremented version to 0.99.50
  655. * ipkg_cmd.c: write out status after doing an upgrade
  656. 2003-02-27 Jamey Hicks <jamey@handhelds.org> (another patch from pb)
  657. * configure.ac: incremented version to 0.99.49
  658. * pkg_parse.c, pkg.c: do not treat deb revision specially
  659. 2003-02-27 Jamey Hicks <jamey@handhelds.org> (another patch from pb)
  660. * configure.ac: incremented version number to 0.99.48
  661. * args.c: added help for ipkg flags sub-command
  662. * ipkg_cmd.c: added ipkg_flag_cmd, do not upgrade package marked hold
  663. * ipkg_install.c: do not remove obsolesced files if old_pkg is flagged noprune
  664. * ipkg_remove.c: pkg->state_flag is a bitvector now
  665. * pkg.c: pkg->state_flag is a bitvector now
  666. * pkg.h: pkg->state_flag is a bitvector now
  667. 2003-02-27 Jamey Hicks <jamey@handhelds.org> (another patch from pb)
  668. * configure.ac: incremented version number to 0.99.47
  669. * pkg.c: refix "uninstalled package has NULL tmp_unpack_dir"
  670. * pkg_hash.c:
  671. 2003-02-27 Aman Gupta <oz@themastermind1.net> (another patch from pb_)
  672. * configure.ac: incremented version number to 0.99.46
  673. * pkg.c: fix "uninstalled package has NULL tmp_unpack_dir"
  674. 2003-02-24 Jamey Hicks <jamey@handhelds.org> (per patch from Philip Blundell <pb@handhelds.org>)
  675. * configure.ac: incremented version to 0.99.45
  676. * file_util.c: include space for null in line_size
  677. * ipkg_cmd.c: sigint handler while configuring packages
  678. * ipkg_install.c: state_status != SS_INSTALLED and != SS_UNPACKED
  679. * ipkg_remove.c: missing i++
  680. * pkg.c: do not run scripts in offline_root mode
  681. * pkg_depends.c: every package provides itself
  682. * pkg_hash.c: better handling of packges provided by multiple providers
  683. 2003-02-24 Jamey Hicks <jamey@handhelds.org>
  684. * configure.ac: incremented version number to 0.99.44
  685. * args.c: added doc for -force-overwrite
  686. 2002-11-26 Jamey Hicks <jamey@handhelds.org>
  687. * configure.ac: incremented version number to 0.99.43
  688. * ipkg_install.c: completely skip the space check when -force_space asserted
  689. 2002-11-23 Jamey Hicks <jamey@handhelds.org>
  690. * configure.ac: incremented version number to 0.99.42
  691. * args.c: missed one spot checking for -force_space or -force-space
  692. 2002-11-23 Jamey Hicks <jamey@handhelds.org>
  693. * configure.ac: incremented version number to 0.99.41
  694. * ipkg_install.c: added -force_space option to override out of space check
  695. 2002-11-23 Aman Gupta <oz@themastermind1.net>
  696. * configure.ac: incremented version number to 0.99.40
  697. * ipkg_configure.c: updated to match new text output format
  698. * ipkg_install.c: updated to new text output format
  699. fixed problems where ipks installed from file or
  700. http were being installed over newer ipks of the
  701. same name
  702. * ipkg_remove.c: updated to new text output format
  703. made ipkg remove do what ipkg purge originally did,
  704. by having it remove conffiles, and status entries for
  705. ipks that are removed. ipkg_purge now calls
  706. ipkg_remove
  707. 2002-11-22 Jamey Hicks <jamey.hicks@hp.com>
  708. * configure.ac: incremented version number to 0.99.39
  709. * applied patches from Aman Gupta for better handling of dests
  710. 2002-11-?? Jamey Hicks <jamey.hicks@hp.com>
  711. * configure.ac: incremented version number to 0.99.38
  712. 2002-11-07 Jamey Hicks <jamey.hicks@hp.com>
  713. * configure.ac: incremented version number to 0.99.37
  714. * hash_table.[ch]: moved internals of hash_tables out of pkg_hash.c
  715. * pkg_hash.c: moved internals of hash_tables out of pkg_hash.c
  716. 2002-10-29 Jamey Hicks <jamey.hicks@hp.com>
  717. * configure.ac: incremented version number to 0.99.37
  718. * ipkg_cmd.c: ipkg_upgrade_cmd now installs uninstalled packages
  719. instead of getting a segv
  720. 2002-10-29 Jamey Hicks <jamey.hicks@hp.com>
  721. * configure.ac: incremented version number to 0.99.36
  722. * changed verbose_get to verbose_wget as documented
  723. 2002-08-08 Jamey Hicks <jamey.hicks@hp.com>
  724. * configure.ac: incremented version number to 0.99.34
  725. * ipkg_cmd.c: fixed problem stringifying HOST_CPU
  726. * Makefile.am: helped fix problem stringifying HOST_CPU
  727. 2002-08-08 Jamey Hicks <jamey.hicks@hp.com>
  728. * configure.ac: incremented version number to 0.99.33
  729. * ipkg_cmd.c, args.c: added print-architecture and print-installation-architecture commands
  730. * Makefile.am: added defines for HOST_CPU and BUILD_CPU to CFLAGS and package: target
  731. 2002-08-08 Jamey Hicks <jamey.hicks@hp.com>
  732. * configure.ac: incremented version number to 0.99.32
  733. * pkg.c: removed chroot breakage
  734. 2002-08-07 Jamey Hicks <jamey.hicks@hp.com>
  735. * configure.ac: incremented version number to 0.99.31
  736. * other: applied multiple providers patch from philip blundell
  737. * ipkg_cmd.c: implemented compare_versions cmd
  738. 2002-07-25 Jamey Hicks <jamey.hicks@hp.com>
  739. * configure.ac: incremented version number to 0.99.30
  740. * ipkg_conf.c: added offline_root_pre_script_cmd and offline_root_post_script_cmd
  741. * pkg.c: execute scripts in chroot'ed environment running
  742. pre_script_cmd and post_script_cmd before and after the pkg script.
  743. 2002-07-24 Jamey Hicks <jamey.hicks@hp.com>
  744. * configure.ac: incremented version number to 0.99.29
  745. * pkg.c: fixed a segv when printing Replaces field
  746. 2002-07-24 Jamey Hicks <jamey.hicks@hp.com>
  747. * configure.ac: incremented version number to 0.99.28
  748. * ipkg_cmd.c: merged functionality from ipkg_install_cmd into
  749. ipkg_upgrade_cmd with an eye towards unifying these two commands.
  750. * ipkg_install.c: installing a package that replaces other
  751. packages removes them first. (Upgrade does not do replacements automatically).
  752. * ipkg_remove.c: ipkg_remove_pkg will remove a package with
  753. installed dependents if state_flag == SF_REPLACE.
  754. 2002-07-24 Jamey Hicks <jamey.hicks@hp.com>
  755. * configure.ac: incremented version number to 0.99.27
  756. 2002-07-23 Jamey Hicks <jamey.hicks@hp.com>
  757. * configure.ac: incremented version number to 0.99.26
  758. * renamed pkg_vec_init/pkg_vec_deinit to pkg_vec_alloc/pkg_vec_free
  759. * started implementation of Replaces
  760. 2002-07-22 Jamey Hicks <jamey.hicks@hp.com>
  761. * configure.ac: incremented version number to 0.99.25
  762. * many cleanups trying to regain stability
  763. 2002-07-22 Jamey Hicks <jamey.hicks@hp.com>
  764. * configure.ac: incremented version number to 0.99.24
  765. * various files: trying to stomp a segv in conflicts checking.
  766. 2002-07-17 Jamey Hicks <jamey.hicks@hp.com>
  767. * configure.ac: incremented version number to 0.99.23
  768. * ipkg_remove.c: do not do recursive removal if force-depends is
  769. specified
  770. * other-files: other cleanups to reduce code clutter
  771. 2002-07-16 Jamey Hicks <jamey.hicks@hp.com>
  772. * configure.ac: incremented version number to 0.99.22
  773. * user.[ch]: moved user interaction procedure here
  774. * args.[ch], ipkg_conf.[ch]: added force_removal_of_dependent_packages
  775. * pkg.h: added state_status to abstract_pkg_t
  776. * ipkg_remove.c: If package has installed dependents, then only
  777. remove if force_removal_of_dependent_packages is asserted in
  778. ipkg.conf or on command line. Will add user interaction option later.
  779. 2002-07-16 Jamey Hicks <jamey.hicks@hp.com>
  780. * configure.ac: incremented version number to 0.99.21 after
  781. applying dependent removal and conflicts patch.
  782. 2002-07-14 Jamey Hicks <jamey.hicks@hp.com>
  783. * configure.ac: incremented version number to 0.99.20
  784. * ipkg_download.c: removed useless -N flag from wget
  785. * update-alternatives: 'head -1' -> 'head -n 1', no sort -k 2 for busybox
  786. 2002-07-15 Karthikeyan K <karthik@innvo.com>
  787. * ipkg_remove.c (ipkg_remove_dependant_pkgs): removed setting the
  788. dependencies_checked variable in the while loop b4 actually checking
  789. the dependencies of that package.
  790. * ipkg_cmd.c (ipkg_multiple_files_scan): added check for ".ipk" and
  791. ".deb" extension, so that no caching is attempted on arguments that
  792. are not local files
  793. * pkg_depends.c (pkg_hash_fetch_conflicts): while returning NULL,
  794. casted to (pkg_vec_t *) to compile without warnings
  795. 2002-07-12 Abhaya Shenoy <abhaya@innvo.com>
  796. * pkg_depends.c (pkg_hash_fetch_conflicts): use new abstract_pkg_vec
  797. structure in checking provided_by
  798. 2002-07-07 Jamey Hicks <jamey.hicks@hp.com>
  799. * configure.ac: incremented version number to 0.99.18
  800. * fixed a segv due to type error in provides support
  801. 2002-07-07 Jamey Hicks <jamey.hicks@hp.com>
  802. * configure.ac: incremented version number to 0.99.17
  803. * updated provides support so that installed provider is preferred to
  804. uninstalled provider
  805. 2002-07-05 Abhaya Shenoy <abhaya@innvo.com>
  806. * pkg_depends.c (pkg_hash_fetch_conflicts): check for conflicts
  807. found before returning
  808. 2002-07-04 Abhaya Shenoy <abhaya@innvo.com>
  809. * ipkg_install.c (check_conflicts_for): new function to call
  810. pkg_hash_fetch_conflicts and print offending packages
  811. (ipkg_install_pkg): added call to check_conflicts_for
  812. * pkg.c (pkg_merge): provides from oldpkg should be given
  813. priority
  814. (pkg_init): init of conflicts, conflicts_count fields
  815. * pkg.h (struct pkg): added fields conflicts_str, conflicts,
  816. conflicts_count
  817. * pkg_depends.c (pkg_hash_fetch_conflicts): new function to check
  818. for conflicts
  819. (buildConflicts): new function to set up the conflicts in the pkg
  820. struct
  821. * pkg_depends.h: added new type CONFLICTS to depend_type enum
  822. * pkg_hash.c (hash_insert_pkg): added call to buildConflicts
  823. * pkg_parse.c (pkg_parse_raw): added parsing of Conflicts
  824. 2002-07-04 Karthikeyan K <karthik@innvo.com>
  825. * ipkg_cmd.c (ipkg_multiple_files_scan): new function to handle installation
  826. of already downloaded files
  827. (ipkg_install_cmd): added call to ipkg_multiple_files_scan
  828. (ipkg_remove_cmd): added call to possible_broken_removal_of_packages
  829. * ipkg_install.c (ipkg_install_pkg): added check to remove redundant upgrade
  830. when a package to be installed is already installed as a dependancy of
  831. another
  832. * ipkg_remove.c (possible_broken_removal_of_packages): new fnuction
  833. to check that all packages can be removed, before actually starting to
  834. remove them
  835. (ipkg_remove_dependant_pkgs): new function to remove dependant packages
  836. (ipkg_remove_pkg): added call to ipkg_remove_dependant_pkgs
  837. * pkg.c (abstract_pkg_init): initialized dependencies_checked
  838. * pkg_hash.c (pkg_hash_dump): added more information to hash dump
  839. 2002-07-03 Jamey Hicks <jamey.hicks@hp.com>
  840. * configure.ac: incremented version number to 0.99.16
  841. * ipkg_install.c: defensive programming in case pkg contains no Size: clause
  842. 2002-07-02 Jamey Hicks <jamey.hicks@hp.com>
  843. * configure.ac: incremented version number to 0.99.15
  844. * pkg_depends.c: check for provided_by when fetching unsatisfied dependencies
  845. 2002-07-02 Jamey Hicks <jamey.hicks@hp.com>
  846. * configure.ac: incremented version number to 0.99.14
  847. * pkg_hash.c: if abstract pkg is provided_by, then return pkg vec
  848. of first package that provides it.
  849. 2002-06-17 Jamey Hicks <jamey.hicks@hp.com>
  850. * configure.ac: incremented version number to 0.99.12
  851. * args.h, ipkg_conf.h, ipkg_install.c: Added force_overwrite
  852. option. When this is asserted, ipkg will overwrite files that
  853. have no owner or that belong to other packages.
  854. * ipkg_conf.c, ipkg_dest.c: Update status file atomically, keeping
  855. old copy of status file if cannot update new status file. Applied
  856. patch from Jukka Santala for this fix.
  857. 2002-03-16 Carl Worth <cworth@east.isi.edu>
  858. * configure.ac: Incremented version number to 0.99.9-1.
  859. * RELEASE_NOTES: Added release notes for 0.99.9-1.
  860. 2002-03-15 Carl Worth <cworth@east.isi.edu>
  861. * configure.ac: Incremented version number to 0.99.9.
  862. * RELEASE_NOTES: Added release notes for 0.99.9.
  863. * Makefile.am (bin_PROGRAMS): Install update-alternatives as well.
  864. * familiar/rules (binary-arch): Mv all of /bin to /usr/bin
  865. * configure.ac: Incremented version number to 0.99.8.
  866. * RELEASE_NOTES: Added release notes for 0.99.8.
  867. * familiar/rules (binary-arch): Fixed to use "make install-strip"
  868. rather than "make install" and a strip command.
  869. * ipkg_cmd.c (ipkg_install_cmd): Moved an error message up from
  870. ipkg_install_by_name, (eventually all error messages should come
  871. up out of what will become libipkg, (pkg.c, ipkg_install.c, etc.)
  872. and into ipkg_cmd.c and friends).
  873. (ipkg_upgrade_pkg): Pushed downgrade check down into
  874. ipkg_install_by_name so that "ipkg install foo" will do the
  875. downgrade check.
  876. * ipkg.h: Rename some ipkg_error_t error codes to be more
  877. consistent.
  878. * ipkg_install.c (resolve_conffiles): Added missing removal of
  879. backed-up modified conffiles, (which led to bizarre, bogus
  880. conffile prompting the next time the package was upgraded).
  881. (user_prefers_old_conffile): Fixed reversed arguments to diff in
  882. interactive conffiles prompting.
  883. (ipkg_install_by_name): Fixed "ipkg install foo" to never
  884. downgrade foo, (just like "ipkg upgrade foo").
  885. * familiar/rules: Added installation of
  886. /usr/share/doc/ipkg/copyright file. Fixed so that ipkg.conf goes
  887. to /etc, not /usr/etc, (but still keep binary in /usr/bin not
  888. /bin). Changed name of installed binary from ipkg-unstable to
  889. ipkg.
  890. * familiar/control.in (Package): Changed package name from
  891. ipkg-unstable to ipkg.
  892. * pkg_parse.c (parseVersion): Fixed to ignore whitespace at
  893. beginning of version string.
  894. (pkg_parse_raw): Fixed segfault if a package record list ends with
  895. a package paragraph without a final blank line.
  896. * ipkg_install.c (check_data_file_clashes): Improved wording of
  897. file clash error message.
  898. * ipkg_download.c (ipkg_download_pkg): Fixed segfault if package
  899. has no src, (occurs if package had benn installed locally, then
  900. was removed (but not purged), then tried to reinstall eithout it
  901. existing in any /usr/lib/ipkg/lists/* file).
  902. * etc/ipkg.conf: Added a default ipkg.conf to the distribution.
  903. 2002-03-13 Carl Worth <cworth@east.isi.edu>
  904. * configure.ac: Incremented version to 0.99.7.
  905. * RELEASE_NOTES: Added release notes for 0.99.7.
  906. * pkg.c (pkg_run_script): Added support to export
  907. IPKG_OFFLINE_ROOT. This is really a nasty hack as it means scripts
  908. need to be modified to check IPKG_OFFLINE_ROOT. I'd really prefer
  909. coming up with a good, reliable chroot system. But for now this
  910. will let update-alternatives work, (which already does examine
  911. IPKG_OFFLINE_ROOT).
  912. (pkg_run_script): Added missing brace.
  913. * ipkg_conf.c (ipkg_conf_init): Reworked significantly to properly
  914. set up the pkg_dest_list stuff to account for offline_root.
  915. * args.c (args_parse): Added support for -force_defaults in
  916. addition to -force-defaults, etc. as I kept mistyping these
  917. somehow.
  918. 2002-03-12 Carl Worth <cworth@east.isi.edu>
  919. * configure.ac: Incremented version to 0.99.6.
  920. * RELEASE_NOTES: Added release notes for 0.99.6.
  921. * ipkg_download.c (ipkg_download): Fixed bug in handling of
  922. "file://" URLs.
  923. * ipkg.c (main): Fixed to abort if ipkg_conf_init fails.
  924. * ipkg_conf.c (ipkg_conf_init): Fixed to complain if given an
  925. unknown dest.
  926. * pkg.c (pkg_print_field): Fixed several fields to not print if
  927. NULL, (Architecture. Maintainer, Size, Filename, Description)
  928. * args.c (args_parse): Fixed bug that was always setting
  929. force_removal_of_essentail_packages (yikes!).
  930. * configure.ac: Incremented version to 0.99.5.
  931. * RELEASE_NOTES: Added release notes for 0.99.5.
  932. * familiar/rules (binary-arch): Added strip back in in preparation
  933. of non-unstable release of ipkg.
  934. * str_util.c (str_starts_with): Added convenience function.
  935. * pkg_extract.c (pkg_extract_data_file_names_to_file): Fixed
  936. filenames in *.list files to be compatible with dpkg and the old
  937. ipkg, (no prefix of "." for example).
  938. * pkg.c (pkg_run_script): Added export of PKG_ROOT for the benefit
  939. of maintainer scripts.
  940. * ipkg_remove.c (ipkg_remove_pkg): Complain and abort if user
  941. attempts to remove an essential package, (also inform them of the
  942. force option if they insist).
  943. * ipkg_install.c (ipkg_install_pkg): Added message about whether
  944. installing or upgrading.
  945. * ipkg_download.c (ipkg_download): Added support for "file://"
  946. URLs, (untested).
  947. (ipkg_download): Added support for wget proxy options.
  948. * ipkg_conf.c (ipkg_conf_init): Added proxy support to ipkg_conf,
  949. (http_proxy, ftp_proxy, no_proxy, proxy_user, and proxy_passwd).
  950. * ipkg_cmd.c (ipkg_upgrade_pkg): Moved Upgrading message from
  951. ipkg_upgrade_cmd to ipkg_install_pkg.
  952. * args.c (args_parse): Added new option
  953. -force-removal-of-essential-packages, (which is intentionally
  954. painful to type and not listed in usage. It should not be used
  955. often).
  956. 2002-03-11 Carl Worth <cworth@east.isi.edu>
  957. * configure.ac: Incremented version to 0.99.3.
  958. * RELEASE_NOTES: Added release notes for 0.99.3.
  959. * pkg_depends.c (pkg_hash_fetch_unsatisfied_dependencies): Fixed
  960. to avoid infinite loop in the case of a circular dependency.
  961. * configure.ac: Incremented version to 0.99.2.
  962. * RELEASE_NOTES: Added release notes for 0.99.2.
  963. * familiar/rules: Commented out strip, (temporary until this beast
  964. is deemed more stable).
  965. * xsystem.c (xsystem): Cleaned up error message, (missing
  966. newline).
  967. * pkg.c (pkg_merge): Made pkg_merge a NOP if oldpkg == newpkg.
  968. (pkg_print_field): Don't print MD5sum field if NULL.
  969. * ipkg_install.c (satisfy_dependencies_for): Now returns error
  970. status if one or more of the dependencies fail to install cleanly.
  971. (unpack_pkg_control_files): Fixed to not tack on a bunch of
  972. NULL-valued conffiles entries if non-NULL conffiles already
  973. exist. This fixed the errant prompting for unmodified conffiles
  974. during -force-reinstall.
  975. (unpack_pkg_control_files): Cleaned up conffile filenames to not
  976. have ugly things like "///" inside them.
  977. * ipkg_download.c (ipkg_download): Cleaned up error message.
  978. (ipkg_download): Now uses new file_move function.
  979. (ipkg_download_pkg): Created new function, (from old code in ipkg_install).
  980. * ipkg_cmd.c (ipkg_download_cmd): Added new "ipkg download"
  981. command.
  982. * file_util.c (file_move): Created file_move, (from code that had
  983. been in ipkg_download).
  984. (file_copy): Added error message on failure.
  985. * conffile.c (conffile_has_been_modified): Eliminated crash if
  986. conffile_has_been_modified is called with conffile->value == NULL.
  987. 2002-03-09 Carl Worth <cworth@east.isi.edu>
  988. * RELEASE_NOTES: Added release notes for 0.99.1
  989. * configure.ac: Incremented version to 0.99.1
  990. * pkg_hash.c (pkg_hash_pkg_owning_file): Fixed to actually return
  991. NULL if no package owns a file.
  992. * pkg.c (pkg_get_installed_files): Added installed_files_ref_cnt
  993. to pkg_t to prevent pkg->installed_files from being freed from an
  994. inner loop while still being used by an outer loop, (which was
  995. happening).
  996. * pkg_hash.c (pkg_hash_pkg_owning_file): Moved this function in
  997. from pkg_dest.c. Also, updated it to use pkg_get_installed rather
  998. than mucking around inside /usr/lib/ipkg and globbing for *.list
  999. files.
  1000. (pkg_hash_fetch_best_installation_candidate): Fixed to only return
  1001. a package that actually could be installed, (ie. it must have
  1002. either a local_filename or a non-NULL src from which it could be
  1003. downloaded). This prevents a segfault during "ipkg upgrade".
  1004. * pkg.c (pkg_get_installed_files): Fixed to not do strange things
  1005. to filenames such as: "//./bin/sh"
  1006. * ipkg_cmd.c (ipkg_files_cmd): Added pkg_free_installed_files to
  1007. conserve a bit of memory.
  1008. (ipkg_search_cmd): Updated to use pkg_get_installed rather than
  1009. mucking around inside /usr/lib/ipkg and globbing for *.list files.
  1010. * pkg.c (pkg_free_installed_files): Added this function to free up
  1011. memory from pkg_get_installed_files.
  1012. * ipkg_conf.c (ipkg_conf_set_option): Added force_reinstall option
  1013. to allow reinstallation of an installed package.
  1014. * args.c (args_parse): Added -force-reinstall option to enable
  1015. reinstallation of an installed package.
  1016. * busybox-0.60.2/ar.c (ar_main): Updated unarchive call to track
  1017. prototype change.
  1018. * busybox-0.60.2/libbb/unarchive.c (free_header_ar): Added
  1019. function to plug memory leak.
  1020. * ipkg_install.c (check_data_file_clashes): Fixed crash if no
  1021. package can be found owning the pre-existing file.
  1022. * pkg_dest.c (pkg_dest_deinit): Fixed bug that pkg_dest was
  1023. holding on to freed data rather than making a local copy.
  1024. * pkg_depends.c (freeDepends): Fixed crash when pkg->depends is NULL.
  1025. * RELEASE_NOTES: Added release notes for 0.98.0 and 0.99.0.
  1026. * busybox-0.60.2/libbb/unarchive.c (extract_archive): Fixed
  1027. bug. Always alloc memory for full_name so we don't free data that
  1028. we shouldn't.
  1029. (unarchive): Updated to accept a free_headers function pointer as
  1030. a counterpart to get_headers, to eliminate memory leaks.
  1031. (free_header_tar): Implemented cleanup function as counterpart to
  1032. get_header_tar, to eliminate memory leaks.
  1033. (deb_extract): Added several calls to free_header_tar to eliminate
  1034. memory leaks.
  1035. * str_util.c (str_dup_safe): Added convenience function. Like
  1036. strdup, but safe to use on a NULL pointer.
  1037. * pkg_vec.c (pkg_vec_insert): Updated to use new pkg.c:pkg_merge
  1038. rather than marry_two_packages. With this change the free(pkg) is
  1039. now here rather than one level deeper. Eventually, I want to get
  1040. this free(pkg) up and out of pkg_hash_insert.
  1041. * pkg_parse.c (parseDependsString): Fixed bug walking off the end
  1042. of the raw buffer looking for a character that isspace().
  1043. (parseConffiles): Fixed big bug parsing Conffiles field where all
  1044. conffiles appear on the same line.
  1045. * pkg_hash.c (pkg_hash_add_from_file): Plugged memory leak of data
  1046. allocated deep down in read_raw_pkgs_from_file.
  1047. * pkg_depends.c (pkg_hash_fetch_unsatisfied_dependencies): Plugged
  1048. memory leak, (missing pkg_vec_deinit).
  1049. (freeDepends): Added this function as the counterpart to
  1050. buildDepends. Getting closer to chasing down all memory leaks.
  1051. (depend_deinit): Added this function as the counterpart to
  1052. depend_init. Getting closer to chasing down all memory leaks.
  1053. (parseDepends): plugged memory leak of pkg_name.
  1054. * pkg.c (pkg_deinit): Added pkg_deinit to take care of freeing any
  1055. memory owned by a pkg_t.
  1056. (pkg_init_from_file): This function was 100% broken, (missing
  1057. rewind).
  1058. (pkg_merge): Moved pkg_merge here from
  1059. pkg_vec.c:marry_two_packages. Started work to make it
  1060. non-destructive, (not finished).
  1061. (pkg_print_info): Added Status and Essential fields to
  1062. pkg_print_info.
  1063. (pkg_print_status): Fixed pkg_print_status to work whether or not
  1064. the package is installed.
  1065. * ipkg_utils.c (read_raw_pkgs_from_file): Moved fclose out of
  1066. read_raw_pkgs_from_stream and into this function where it belongs,
  1067. (since the fopen occurs here).
  1068. (trim_alloc): Fixed trim to not free data passed in. Changed the
  1069. name to make it obvious that it is allocating memory.
  1070. * ipkg_install.c (ipkg_install_from_file): Fixed to be more robust
  1071. to the fact that hash_insert_pkg sometimes frees the data that I
  1072. pass into it (!).
  1073. (satisfy_dependencies_for): Cosmetic change to messages.
  1074. (satisfy_dependencies_for): Now sets the dest on to-be-installed
  1075. packages, so that the state_want flag can be written to a status
  1076. file if necessary.
  1077. (satisfy_dependencies_for): Added pkg_vec_deinit to plug memory
  1078. leak.
  1079. (ipkg_install_pkg): Added "run ipkg update?" hint to error
  1080. message.
  1081. (backup_modified_conffiles): Made more robust to the case that a
  1082. conffile has disappeared.
  1083. (install_maintainer_scripts): Fixed bug that was installing
  1084. maintainer scripts as libFoopostinst rather than
  1085. libFoo.postinst. This was preventing postinst scripts from being
  1086. executed.
  1087. (cleanup_temporary_files): Added missing closedir to plug a memory
  1088. leak.
  1089. * ipkg_download.c (ipkg_download): Cosmetic change to error
  1090. messages.
  1091. * ipkg_conf.c (ipkg_conf_parse_file): Plugged some small memory
  1092. leaks.
  1093. (ipkg_conf_set_option): Changed configuration options from
  1094. force-depends, force-defaults to force_depdends, force_defaults to
  1095. be compatible with old ipkg.conf files.
  1096. (ipkg_conf_set_option): Fixed bug in parsing options.
  1097. (ipkg_conf_write_status_files): Fixed to list all interesting
  1098. packages, (any with non-default state), in status file rather than
  1099. just installed files.
  1100. (ipkg_conf_write_status_files): Plugged a memory leak.
  1101. * ipkg_cmd.c (ipkg_status_cmd): Changed "ipkg status" to use
  1102. pkg_print_info so it is much more verbose, (includes fields such
  1103. as Maintainer, etc. that are merged in from the lists files).
  1104. * ipkg.h (IPKG_DEBUG_NO_TMP_CLEANUP): Added compile-time option to
  1105. preserve temporary files for easier debugging.
  1106. * file_util.c (file_md5sum_alloc): cosmetic changes to variable
  1107. names.
  1108. * ipkg_conf.c (ipkg_conf_init): Added support for offline_root
  1109. configuration file option.
  1110. * args.c (args_init): Added support for -o, -offline,
  1111. -offline-root command-line arguments. (Although they don't really
  1112. have any effect yet).
  1113. * ipkg_install.c (ipkg_install_pkg): Changed back to marking
  1114. package as installed before postinst, (the pkg_run_script wanted
  1115. to find the scripts in /usr/lib/ipkg/info). Actually, it could
  1116. probably find the script in either place at this point so maybe it
  1117. doesn't really matter.
  1118. 2002-03-07 Carl Worth <cworth@east.isi.edu>
  1119. * ipkg_install.c (ipkg_install_pkg): Changed to only mark package
  1120. as installed after running ipkg_configure, (to run the postinst
  1121. script).
  1122. * RELEASED ipkg-unstable 0.99.0
  1123. * Updated all instances of "XXX" in the code to indicate one of
  1124. the following categories:
  1125. XXX: BUG: This is a bug that needs to be fixed.
  1126. XXX: QUESTION: Implementation approach is uncertain here.
  1127. XXX: CLEANUP: Suggestion on how the code could be cleaned up.
  1128. XXX: FEATURE: Comment describes a useful feature request.
  1129. * pkg.c (pkg_print_status): Added the Depends field to package
  1130. paragraphs in the status file, ("ipkg remove" will need this).
  1131. * ipkg_install.c (satisfy_dependencies_for): Fixed "ipkg install"
  1132. to not complain several times about "Package foo already
  1133. installed" when doing large recursive installs.
  1134. (ipkg_install_pkg): "ipkg install foo" for an installed package
  1135. will now check and install any missing dependencies before exiting
  1136. with "Package foo is alrady installed."
  1137. 2002-03-06 Carl Worth <cworth@east.isi.edu>
  1138. * pkg_dest.c (pkg_dest_pkg_owning_file_alloc): Moved this function
  1139. here from ipkg_install.c. Also plugged a memory leak in it with
  1140. globfree.
  1141. * pkg.c (pkg_remove_installed_files_list): Fixed bug that
  1142. prevented package.list file from ever being removed during "ipkg
  1143. remove".
  1144. * ipkg_remove.c (remove_data_files_and_list): Fixed noisy and
  1145. spurious warnings about non-empty directories. "ipkg remove"
  1146. should now only say anything if a directory that was solely
  1147. provided by that package is non-empty.
  1148. * ipkg_cmd.c (ipkg_install_pending_cmd): Plugged memory leak with
  1149. globfree.
  1150. * ipkg_install.c: *Many* fixes to enable "ipkg upgrade" to more or
  1151. less work. Primarily fixing file clash identification and conffile
  1152. handling/resolution. "ipkg upgrade" has now worked correctly on
  1153. several test cases!
  1154. * ipkg_install.c (unpack_pkg_control_files): Now initializes
  1155. conffiles list from the contents of conffiles control file,
  1156. (leaves md5sum calculation until the actual conffiles are
  1157. extracted later).
  1158. (ipkg_install_pkg): Separated backup_modified_conffiles and
  1159. check_data_file_clashes into separate functions.
  1160. (preinst_configure): Simplified this function pushing its old
  1161. logic into pkg.c:pkg_run_script.
  1162. (backup_modified_conffiles): Added backup of any conffiles that
  1163. are new as of this upgrade.
  1164. (check_data_file_clashes): First real implementation of
  1165. check_data_file_clashes.
  1166. (resolve_conffiles): First real implementation of
  1167. resolve_conffiles.
  1168. (backup_make_backup): Added this and a few other functions to
  1169. abstract backup creation/removal.
  1170. (find_pkg_owning_file): Added this function.
  1171. * pkg_extract.c (pkg_extract_data_files_to_dir): Fixed args to
  1172. deb_extract so that existing files will be overwritten, (and any
  1173. other error messages will no longer be suppressed).
  1174. * pkg.c (pkg_print_status): Added Conffiles field to
  1175. pkg_print_status.
  1176. (pkg_print_field): Fixed crash when printing NULL Conffiles
  1177. values.
  1178. (pkg_get_conffile): Fixed crash if pkg_get_conffile called with a
  1179. NULL pkg.
  1180. (pkg_run_script): Made pkg_run_script smart enough to run scripts
  1181. for uninstalled packages, (from
  1182. <pkg_tmp_unpack_dir>/<script_name>), as well as for isntalled
  1183. packages, (from <dest_info_dir>/<pkg_name>.<script_name>
  1184. * str_util.c (str_tolower): Added convenience function.
  1185. (str_toupper): Added convenience function.
  1186. * nv_pair.c (nv_pair_init): Fixed crash from calling nv_pair_init
  1187. with NULL value.
  1188. * pkg.c (pkg_init_from_file): Fixed bug -- forgot to close file.
  1189. * file_util.c (file_md5sum_alloc): Convenience wrapper around
  1190. md5_stream as ripped out of busybox. This function takes care of
  1191. file open/close and does the bin2hex conversion of the md5sum.
  1192. * conffile.c (conffile_has_been_modified): Implemented this
  1193. function for real now that we have md5sum capability.
  1194. * md5.c (md5_stream): Sucked in md5sum calculation code from
  1195. busybox, (it wasn't part of libbb, so I just copied the files
  1196. straight in and ripped out uninteresting functions such as
  1197. md5sum_main, etc.)
  1198. 2002-03-05 Carl Worth <cworth@east.isi.edu>
  1199. * pkg.c (pkg_print_field): Added support for printing Conffiles
  1200. field.
  1201. * ipkg_install.c (remove_obsolesced_files): With the fixed
  1202. pkg_get_installed_files_list from below, this function now seems
  1203. to work!
  1204. (ipkg_install_pkg): Fixed to mark old package as uninstalled after
  1205. upgrading.
  1206. * pkg.c (pkg_get_installed_files_list): Fixed so that it's
  1207. possible to get an "installed_files" list even from an uninstalled
  1208. package, (it pulls the list of data files straight out of the
  1209. package).
  1210. * ipkg_cmd.c (ipkg_upgrade_cmd): Fixed ipkg_upgrade to not choke
  1211. if asked to upgrade an un-installed package.
  1212. (ipkg_upgrade_pkg): Fixed printing of version numbers.
  1213. * file_util.c (file_mkdir_hier): Abstracted call to libbb
  1214. make_directory into new file_mkdir_hier. At this point, the only
  1215. calls into libbb are isolated in file_util and pkg_extract. This
  1216. will make it easier if we ever decide to directly incorporate that
  1217. code or rewrite it.
  1218. * pkg_extract.c (pkg_extract_data_files_to_dir): Abstracted all
  1219. calls to deb_extract in several new pkg_extract functions.
  1220. 2002-03-04 Carl Worth <cworth@east.isi.edu>
  1221. * ipkg_conf.c (ipkg_conf_init): Added support to ipkg_conf to
  1222. pickup command-line arguments for "force-defaults" and
  1223. "force-depends". Things set on the command-line should take
  1224. precedence over things found in the configuration file.
  1225. * ipkg_cmd.c (ipkg_search_cmd): Fixed formatting of "ipkg search"
  1226. output.
  1227. * pkg_depends.c (pkg_hash_fetch_unsatisfied_dependencies):
  1228. Re-added fix to set *unresolved to NULL if depends is NULL.
  1229. * xregex.c (xregexec): Removed useless error messages from NOMATCH
  1230. calls to regexec.
  1231. * ipkg_install.c (satisfy_dependencies_for): Added support for new
  1232. "unresolved" argument in
  1233. pkg_hash_fetch_unsatisfied_dependencies. Cleaned up warning/error
  1234. messages.
  1235. * ipkg_cmd.c (ipkg_search_cmd): Implemented first-cut of "ipkg search".
  1236. * pkg_depends.c (pkg_hash_fetch_unsatisfied_dependencies): Fixed
  1237. to set *unresolved to NULL if depends is NULL.
  1238. 2002-03-01 Carl Worth <cworth@east.isi.edu>
  1239. * RELEASED ipkg-unstable 0.98.0
  1240. * ipkg_configure.c (ipkg_configure): Added flushing of stdout,
  1241. (here and in a few other modules).
  1242. * file_util.c (file_copy): Implemented this function here as one
  1243. step toward isolating the calls into libbb functions. Updated old
  1244. copy_file calls to file_copy in both ipkg_download.c and
  1245. ipkg_install.c.
  1246. * ipkg_install.c, ipkg_remove.c: Demoted several "XXX" comments to
  1247. DPKG_INCOMPATIBILITY as I really don't intend on addressing them
  1248. any time soon, (if ever).
  1249. * ipkg_cmd.c (ipkg_files_cmd): Fixed "ipkg files" from crashing on
  1250. uninstalled packages.
  1251. * familiar/rules: Added support for easy building of an
  1252. ipkg.ipk. The version number and the architecture are
  1253. automatically sucked in correctly from autoconf magic, (even when
  1254. cross-compiling). Maybe autoconf will start paying off with
  1255. benefits rather than pain, (finally!).
  1256. * configure.ac: Removed MEMCMP and STAT checks which were breaking
  1257. cross-compilation.
  1258. * ipkg_cmd.c (ipkg_upgrade_pkg): BIG bugfix: Package version
  1259. comparison was sign-reversed, (hence it would never upgrade).
  1260. 2002-02-28 Carl Worth <cworth@east.isi.edu>
  1261. * ipkg_download.c (ipkg_download): Changed from
  1262. system("/bin/cp",...) to copy_file(...)
  1263. * replace/strndup.c: Implemented an (untested) replacement for
  1264. strndup.
  1265. * configure.ac: Added AC_CANONICAL_HOST to automatically set the
  1266. correct architecture type in the ipkg control file.
  1267. * configure.ac: Changed version number to 0.98.0 in preparation
  1268. for alpha release.
  1269. * familiar/rules: Added support for easy building of an ipkg.ipk.
  1270. 2002-02-27 Carl Worth <cworth@east.isi.edu>
  1271. * ipkg_install.c (ipkg_install_pkg): Fixed to abort on failed
  1272. download.
  1273. * pkg.c (pkg_run_script): Fixed bug that was preventing any
  1274. package maintainer scripts from running, (hence, they run now so
  1275. running non-native offline no longer works until I figure out the
  1276. chroot plans).
  1277. * TODO: Added rough outline of remaining features with a release
  1278. schedule.
  1279. * pkg_parse.c (pkg_parse_raw): Added parsing of "MD5Sum" in
  1280. addition to "MD5sum" to accomodate bug in old ipkg.
  1281. * void_list.c (void_list_remove): Added new remove function, (also
  1282. adjusts a forward iterator). Required new list->pre_head member
  1283. which was added to all sub-list types.
  1284. * pkg.c (pkg_init): Changed pkg->conffiles to be of the new
  1285. conffile_list_t datatype.
  1286. (pkg_remove_installed_files_list): Pulled this function into
  1287. pkg.c, (from ipkg_remove.c), so the mallocs and frees would be in
  1288. the same C file.
  1289. (pkg_get_conffile): Added this convenience function.
  1290. * ipkg_remove.c: Fixed several bugs. ipkg_remove now actually
  1291. works for simple packages!
  1292. * ipkg_install.c (ipkg_install_pkg): Don't re-install if a package
  1293. is already installed.
  1294. (ipkg_install_pkg): Fixed major bug that all of ipkg_install's
  1295. work was always being unwound even when successful.
  1296. * ipkg_cmd.c (ipkg_files_cmd): Fixed to use
  1297. pkg_get_installed_files_list rather than a private implementation
  1298. that sifted through the file lists on disk.
  1299. * str_util.c (str_ends_with): Added this convenient function.
  1300. (str_chomp): Another convenience.
  1301. * ipkg_conf.c: Moved chomp to str_util.c (str_chomp), since
  1302. someone else wanted it too.
  1303. 2002-02-26 Carl Worth <cworth@east.isi.edu>
  1304. * pkg_parse.c (pkg_parse_raw): Added XXX requesting parsing of
  1305. Conffiles: field along with a hint about how to store the data.
  1306. * conffile_list.c: Added a little wrapper around nv_pair_list
  1307. * conffile.c: Added a little wrapper around nv_pair
  1308. * str_util.c (str_ends_with): New convenience function.
  1309. * str_list.c (str_list_remove): Plugged in remove function.
  1310. * void_list.c (void_list_remove): Added remove function, (handles
  1311. updating of forward iterator).
  1312. * pkg.c (pkg_run_script): Changed to return return value of
  1313. script.
  1314. * ipkg_remove.c: Fleshed out initial version of all ipkg_remove.c
  1315. functions.
  1316. * ipkg_configure.c (ipkg_configure): Added check on return value
  1317. of pkg_run script. Added comments about dpkg compliance.
  1318. * ipkg_cmd.c (ipkg_purge_cmd): Added ipkg_purge_cmd
  1319. 2002-02-20 Carl Worth <cworth@east.isi.edu>
  1320. * Added USC copyright statements, (and Compaq stubs as necessary)
  1321. * ipkg_install.c: At this point "ipkg install" on a simple
  1322. package, (no scripts and no dependencies), works just fine. It
  1323. might even do some of the script and dependency handling correctly
  1324. too, but I haven't tested that yet. "ipkg install libc6" is a nice
  1325. little test that should complete without any errors or
  1326. warnings. Follow that up with "ipkg status" to see that it worked.
  1327. * pkg.c (pkg_run_script): Added convenience method for running
  1328. package scripts.
  1329. * ipkg_install.c: Fixed several bugs:
  1330. (unpack_pkg_control_files): control files now extract to the
  1331. correct temporary directory.
  1332. (ipkg_install_pkg): pkg->state_want is now properly set to SW_INSTALL
  1333. (ipkg_install_pkg): status file now gets written after installation
  1334. (cleanup_temporary_files): All temporary files are cleaned up.
  1335. * ipkg_configure.c (ipkg_configure): Fleshed out a very simple
  1336. ipkg_configure, (simply runs "postinst configure"). Maybe it will
  1337. need to be smarter at some point. Moved unwritten conffiles stuff
  1338. back to ipkg_install.c.
  1339. * ipkg_conf.c (ipkg_conf_write_status_files): Moved this function
  1340. from ipkg_utils to ipkg_conf since it needs access to the
  1341. pkg_dest_list.
  1342. * pkg_vec.c (marry_two_packages): Added several missing fields,
  1343. (state_want, state_flag, filename, local_filename, tmp_unpack_dir,
  1344. md5sum, size, installed_size, priority, source, conffiles,
  1345. isntalled_files, essential)
  1346. 2002-02-19 Carl Worth <cworth@east.isi.edu>
  1347. * ipkg_install.c: several little bug fixes. "ipkg install" will
  1348. now actually install files from a package! There are still some
  1349. bugs, (eg. postinst scripts are not called -- probably other
  1350. things as well). But, it's coming together now.
  1351. * pkg_dest.c (pkg_dest_init): now creates all necessary directories
  1352. * ipkg_download.c (ipkg_download): Fixed misleading parameter name.
  1353. * ipkg_conf.c (ipkg_conf_deinit): Now cleans up tmd_dir on deinit
  1354. ipkg.c: now calls ipkg_conf_deinit before exiting.
  1355. (ipkg_conf_add_nv): Fixed to set default_dest when parsing first
  1356. dest in ipkg.conf
  1357. * ipkg_cmd.c (ipkg_list_cmd): Fixed ugly bug in ipkg_list that led
  1358. to infinite loops, segfaults, string corruption, and other bizarre
  1359. behavior.
  1360. * Added many files as we are approaching the first functional ipkg
  1361. implementation in C:
  1362. file_util.c: convenience for testing if file_exists, reading files, etc.
  1363. ipkg_configure.c: mostly just a stub so far
  1364. ipkg_download.c: convenient function to download a file
  1365. nv_pair.c: data structure to hold a name-value pair
  1366. nv_pair_list.c: data structure to hold a list of nv_pair_t
  1367. pkg_dest.c: data structure for everything a pkg destination wants
  1368. pkg_dest_list.c: data structure to hold a list of pkg_dest_t
  1369. pkg_extract.c: convenience functions for package extraction,
  1370. (these function should encapsulate any libbb borrowings we perform
  1371. -- although some slipped into other files already)
  1372. pkg_src.c: everything you might need for a pkg src.
  1373. pkg_src_list.c: data structure to hold a list of pkg_src_t
  1374. str_list.c: data structure to hold a list of char *
  1375. void_list.c: generic linked-list data structure and functions
  1376. xsystem.c: wrapper around system() with error checking
  1377. * ipkg_remove.c: Just added some stubs. Nothing really works at
  1378. all yet.
  1379. * ipkg_install.c: Large rework of ipkg_install. It's now close to
  1380. actually being usable, (but it's not quite there yet). Revamped to
  1381. match dpkg install order more closely, (with all the stubs in case
  1382. we ever want to call all the scripts that dpkg does). Also updated
  1383. to use a more recent deb_extract from libbb.
  1384. * ipkg_extract_test.c (main): Added support for a third arg, (the
  1385. filename to extract to the buffer).
  1386. * ipkg_conf.c (ipkg_conf_init): Added several fields to
  1387. ipkg_conf_t: pkg_src_list, pkg_dest_list ,
  1388. restrict_to_default_dest, default_dest, tmp_dir, lists_dir,
  1389. pending_dir, force_depends, and pkg_hash. There's still a bit of
  1390. tension between options stored in the config file, (ipkg_conf_t),
  1391. and command-line arguments, (args_t).
  1392. * ipkg_cmd.c: First version that is approaching usability. The
  1393. following commands are more-or-less in place: "ipkg update", "ipkg
  1394. list", "ipkg info", "ipkg status". While the rest are in various
  1395. states of being partiallyy written or written but untested.
  1396. (ipkg_upgrade_cmd): Added support for restricting to a dest. Many
  1397. other changes, largely involving plugging into the pkg_hash for
  1398. real for the first time, and adding multiple dest support.
  1399. * ipkg.c: Added support for setting the dest on the command-line.
  1400. * args.c: Added support for IPKG_CONF_DIR environment variable and
  1401. -f, -conf, and -conf-file options.
  1402. * configure.ac: Added lots of little bits suggested by autoscan.
  1403. 2002-02-18 Carl Worth <cworth@east.isi.edu>
  1404. * pkg_parse.c (pkg_parse_raw): Added parsing, (kinda ugly), for
  1405. essential field.
  1406. * pkg.c (pkg_print_field): Added the essential flag.
  1407. * pkg_vec.c (pkg_vec_insert): Fixed to use pkg_compare_versions to
  1408. determine matching versions instead of a strcmp on the version
  1409. string.
  1410. 2002-02-15 Carl Worth <cworth@east.isi.edu>
  1411. * pkg_parse.c (pkg_parse_raw): Updated to accept a pkg_src_t
  1412. * pkg.c (pkg_init): Added field to pkg_t: "pkg_src_t *src"
  1413. * pkg_hash.c (pkg_hash_add_from_file): Updated to accept a pkg_src_t
  1414. * pkg_parse.c (parseStatus): Modified to accept a pkg_t *
  1415. (parseVersion): Added this function
  1416. (pkg_parse_raw): Updated to accept a pkg_dest_t
  1417. (pkg_parse_raw): Reworked the parsing to use a pkg_t rather than a
  1418. slew of local variables.
  1419. (pkg_parse_raw): Added support for about a dozen new pkg_t fields
  1420. * pkg.h: Updated for all pkg.c changes.
  1421. * pkg.c (pkg_new): Added pkg_new for convenient alloc'ing of a pkg_t.
  1422. (pkg_init): Added several fields to pkg_t: dest, section,
  1423. suggests, filename, local_filename, tmp_unpack_dir, md5sum, size,
  1424. installed_size, priority, source, and conffiles.
  1425. (): Moved buildPkg this function to pkg_parse
  1426. (pkg_init_from_file): Added convenience function for filling a
  1427. pkg_t from an actual package file.
  1428. (pkg_print_info): Split print_pkg into both pkg_print_info and
  1429. pkg_print_status.
  1430. (pkg_print_field): Added pkg_print_field, (extremely ugly)
  1431. (): Moved parseversion to pkg_parse where it belongs
  1432. (pkg_version_str_alloc): Added, (complement of parse_version)
  1433. * pkg_depends.h: Added GPL blurb
  1434. (PKG_DEPENDS_H): Added multiple include protection
  1435. * pkg_depends.c: Moved non-static prototypes to header file.
  1436. Changed several locl-only functions to be static.
  1437. Added function prototypes for static functions.
  1438. (buildDepends): Removed unecessary cast of malloc return value.
  1439. * pkg_hash.h: Moved hash-related struct declarations to this file
  1440. Rename pkg_fetch* to have consistent pkg_hash_fetch prefix.
  1441. Added missing prototype for pkg_vec_fetch_by_name
  1442. * pkg_hash.c: (pkg_hash_add_from_file): Added support for setting
  1443. the pkg_dest
  1444. (pkg_hash_add_from_file): Moved buildDepends call to
  1445. hash_insert_pkg
  1446. (pkg_hash_fetch_installed_by_name_dest): Added this function to
  1447. support pkg_dest
  1448. * ipkg_utils.h: Added GPL blurb
  1449. (IPKG_UTILS_H): Added multiple include protection
  1450. * ipkg_utils.c:
  1451. (read_raw_pkgs_from_file): broke read_raw_pkgs into
  1452. read_raw_pkgs_from_file and read_raw-pkgs_from_stream
  1453. (ipkg_write_status_file): Fixed return value
  1454. (print_pkg_status): Moved this function to pkg.c:pkg_print_status
  1455. (line_is_blank): Fixed const char handling
  1456. 2002-02-08 Carl Worth <cworth@east.isi.edu>
  1457. * pkg_parse.c: Fixed a bug in parsing the 3 state fields.
  1458. 2002-02-06 Carl Worth <cworth@east.isi.edu>
  1459. * pkg.c: Expanded pkg_status field to the full 3 fields: state_want,
  1460. state_flag, and state_status.
  1461. 2001-12-11 Carl Worth <cworth@east.isi.edu>
  1462. * ipkg_conf.c: Now parses /etc/ipkg.conf, (and doesn't do anything
  1463. with it).
  1464. * ipkg.c: Started work on ipkg main, (not much here yet).
  1465. * ipkg_cmd.h: Added a tiny thing to abstract top-level ipkg
  1466. commands, (not finished).
  1467. * Set up autoconf and friends