ChangeLog 27 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994
  1. 2024-10-15 mio <stigma@disroot.org>
  2. daily: Prohibit BEGIN without END or END > BEGIN
  3. Update documentation for daily command
  4. 2024-10-15 mio <stigma@disroot.org>
  5. Add support for automatic daily end date.
  6. Dates are stored in $XDG_STATE_HOME/pixiv_down/last_daily_run on a
  7. single line using the format YYYY-MM-DD. No time is recorded, since
  8. the daily command will use midnight as the end time (00:00)
  9. Resolves: https://codeberg.org/supercell/pixiv_down/issues/32
  10. 2024-10-15 mio <stigma@disroot.org>
  11. Configure guix.scm to use meson build system
  12. 2024-10-13 mio <stigma@disroot.org>
  13. Update PHPSESSID link
  14. Fix version generation with dub (non-git)
  15. Update version strings
  16. Include meson files with autoconf dist
  17. Improve git version tagging across build systems
  18. Require --public or --private (following)
  19. This has been the requirement per the help messages, but wasn't enforced
  20. if another argument was provided, such as --skip.
  21. Improve message when fetching accounts (following)
  22. Use meson on the README
  23. 2024-10-13 mio <stigma@disroot.org>
  24. Add meson build files
  25. (not tested on macOS yet)
  26. This will probably take over the autoconf files that are currently
  27. present. Not that I have anything against autoconf, but meson supports
  28. D out of the box.
  29. There is still some more changes to the meson files that I need to work
  30. out (such as vcs_tag).
  31. The autoconf files will be removed after 2024.10 release.
  32. 2024-10-12 mio <stigma@disroot.org>
  33. Use OS 'state' directory for logs (XDG)
  34. See: https://codeberg.org/supercell/pixiv_down/issues/33
  35. 2024-09-25 mio <stigma@disroot.org>
  36. Add docs/Makefile.am
  37. 2024-09-24 mio <stigma@disroot.org>
  38. v2024.09
  39. Reformat the NEWS file
  40. 2024-09-24 mio <stigma@disroot.org>
  41. Add --force option to daily command
  42. Very useful for times when pixiv changes the AJAX API, breaking
  43. pixiv_down, and the author hasn't realized, so all the images you
  44. thought you were downloading for the last week or so, were actually HTML
  45. files.
  46. *cough*
  47. (running 'find /path/to/pixiv-pictures -size -200c' should help)
  48. 2024-09-24 mio <stigma@disroot.org>
  49. Add --force option to artwork command
  50. Fix downloading images (pixiv change)
  51. At some point, it seems that pixiv started reading the 'accepts' header
  52. a bit differently.
  53. Update mlib.directories to 0.5.0
  54. 2024-08-08 mio <stigma@disroot.org>
  55. Add bookmarked configuration docs
  56. Add configuration for bookmarked always_remove_invalid
  57. Also cleanup the configuration.d file a bit.
  58. 2024-08-07 mio <stigma@disroot.org>
  59. Fix crash when fetching CSRF token
  60. Fixes: https://codeberg.org/supercell/pixiv_down/issues/31
  61. 2024-08-04 mio <stigma@disroot.org>
  62. Add default DFLAGS -g -O2
  63. This bloats the binary, but makes it easier to debug anything crashes.
  64. You can just change this by settings DFLAGS when calling make. E.g:
  65. make DFLAGS='-O3 -frelease'
  66. 2024-08-01 mio <stigma@disroot.org>
  67. Fix autotools-based compilation for GDC12
  68. Bump UserAgent to Firefox 126
  69. Add bookmarked 'remove-from-file' option
  70. Potential fixes for CSRF Token fetching
  71. Instead of requesting the home page (www.pixiv.net), we now request
  72. the 'bookmarks' page of the authenticated account. I think there may
  73. have been some issues with certain IPs making the homepage request,
  74. since it seemed to encounter a Cloudflare verification more often then
  75. not. We also only send a request to fetch the CSRF token if the 'bookmarked'
  76. command is invoked, not for every command except for help.
  77. 2024-07-27 mio <stigma@disroot.org>
  78. Add GNU Guix package definition for development
  79. Remove fetch_dependencies script
  80. It hasn't done anything for a couple of months (0d9ac1895f).
  81. Support for D 2076.
  82. I've been playing around with Guix. Unfortunately, the latest supported
  83. version of GDC (as of writing) is 11, which only supports D 2.076.
  84. Convert Ruby 'configure' to Autotools
  85. I didn't really have anything against using Ruby, other than it meant
  86. depending on another language that may or may not be installed by
  87. default on different distributions.
  88. 2024-07-23 mio <stigma@disroot.org>
  89. Remove magickd from dub.selections.json
  90. Remove man pages when running make uninstall
  91. 2024-07-21 mio <stigma@disroot.org>
  92. v2024.07
  93. Simplify the fetch_dependencies script
  94. Improve message no content to download (`artist`)
  95. Fix artist novel offset not working
  96. 2024-07-02 mio <stigma@disroot.org>
  97. Update CHANGELOG
  98. Fix GIF generation on POSIX
  99. Previously GIFs would play the 'second frame' first and the
  100. 'first frame' second because GraphicsMagick will prepend an
  101. image to the list if there is no previous image in the list.
  102. 2024-06-03 mio <stigma@disroot.org>
  103. Fix endless loop in daily command (pt. 2)
  104. This was an error from 8036e5e9f6ef931f4ec75f6834731651f3f26f63.
  105. Fixes: https://codeberg.org/supercell/pixiv_down/issues/30
  106. 2024-06-02 mio <stigma@disroot.org>
  107. Fix endless loop in daily command
  108. Fixes: https://codeberg.org/supercell/pixiv_down/issues/30
  109. 2024-05-31 mio <stigma@disroot.org>
  110. v2024.05
  111. Update CHANGELOG
  112. Accept --output-directory= and --config-file=
  113. 2024-05-26 mio <stigma@disroot.org>
  114. Remove magickd from README
  115. Update fetch_dependencies.sh
  116. It is likely this script will be removed in a future version.
  117. 2024-05-26 mio <stigma@disroot.org>
  118. Remove dependency on magickd
  119. GraphicsMagick is still used for POSIX builds, however, it is now loaded
  120. via dlopen. There are a couple for this change. Firstly, it simplifies
  121. building when "dub" isn't present. Secondly, it *should* allow us to
  122. support ImageMagick as well.
  123. See: https://codeberg.org/supercell/pixiv_down/issues/29
  124. 2024-05-24 mio <stigma@disroot.org>
  125. Fix invalid array index for help
  126. 2024-05-23 mio <stigma@disroot.org>
  127. Fix building errors (incorrect parameters)
  128. 2024-05-22 mio <stigma@disroot.org>
  129. Add support for CLI configuration overrides
  130. Just need to add the --OPTION=ARG variants.
  131. See: https://codeberg.org/supercell/pixiv_down/issues/26
  132. 2024-05-19 mio <stigma@disroot.org>
  133. Miscellaneous changes (tidy up)
  134. 2024-05-19 mio <stigma@disroot.org>
  135. Improve fallback for building in non-VCS env.
  136. This prevents Make from rebuilding when nothing changed. Only remaining
  137. issue is that magickd isn't present by default.
  138. See: https://codeberg.org/supercell/pixiv_down/issues/28
  139. 2024-05-19 mio <stigma@disroot.org>
  140. Provide a fallback for building in non-VCS env.
  141. 2024-05-18 mio <stigma@disroot.org>
  142. Update CHANGELOG
  143. Allow 'compact' when invalid ID and in interactive
  144. Fix crash in compact command when ID isn't valid.
  145. 2024-05-16 mio <stigma@disroot.org>
  146. Fix crash when downloading an artist
  147. 2024-04-22 mio <stigma@disroot.org>
  148. Send `lang` in pixiv requests
  149. This will localize error messages from the pixiv API, which would
  150. be helpful, if the error messages weren't just "Unknown error occurred".
  151. Fix log formatting in cmds.daily
  152. Get the current locale for error messages
  153. Fix configure script for Ruby 3+
  154. 2024-04-20 mio <stigma@disroot.org>
  155. v2024.04
  156. Fix logging formatting
  157. Remove Ugoira temp files & enable cursor on error
  158. Copyright update
  159. Remove empty EXAMPLES from pixiv_down.1
  160. Remove `nt` module
  161. I created these functions because I'm not a fan of how the phobos
  162. implementations throw exceptions... if these should error than I
  163. don't think the program needs to abort. I'm removing these just to
  164. reduce the number of files to compile and remove duplicate functionality
  165. (since these functions exist in the standard library).
  166. Update README
  167. 2024-04-18 mio <stigma@disroot.org>
  168. Add notice about building with gamut to dub.sdl
  169. Warn when an Ugoira is enountered with gamut
  170. 2024-04-16 mio <stigma@disroot.org>
  171. Fix some incorrectly formatted logging calls
  172. Add initial support for building with gamut
  173. See: https://codeberg.org/supercell/pixiv_down/issues/25
  174. 2024-04-13 mio <stigma@disroot.org>
  175. Don't fetch CSRF Token for help command
  176. Add custom FileLogger
  177. Continuing on from 79726c5a75df9ad3035bd7c55bb24059a8bc8036
  178. Update CHANGELOG.md
  179. 2024-04-13 mio <stigma@disroot.org>
  180. Remove -fpreview=in from GDC build
  181. This has been causing segfaults. While GraphicsMagick is the one that
  182. reports the segfault...
  183. Magick: abort due to signal 11 (SIGSEGV) "Segmentation Fault"...
  184. ...running pixiv_down through GDB seems to reveal an issue with
  185. std.regex. This doesn't happen with DMD or LDC, so the flag remains in
  186. use for those compilers.
  187. 2024-04-07 mio <stigma@disroot.org>
  188. update .editorconfig
  189. Replace logger.d with std.experimental.logger
  190. It was causing some issues with GraphicsMagick, causing the occasionaly
  191. segfault. Probably wasn't written properly. I'll add a custom format
  192. at some point, since the default isn't really nice to look at.
  193. 2024-04-05 mio <stigma@disroot.org>
  194. Add 'bookmarked' command to README
  195. Remove util$converToString
  196. Compile with -preview=in
  197. Move terminal-related functions to term.d
  198. Closes: https://codeberg.org/supercell/pixiv_down/issues/22
  199. 2024-04-04 mio <stigma@disroot.org>
  200. Add pixiv_down-bookmarked.1
  201. Support for removing invalid novel bookmarks
  202. See: https://codeberg.org/supercell/pixiv_down/issues/15
  203. 2024-04-04 mio <stigma@disroot.org>
  204. Implement 'bookmarked --remove-invalid' option
  205. To send a POST request on pixiv, you need a CSRF token which, rather
  206. conveniently, pixiv provides as part of the initial HTML response for
  207. (seemingly) and web page. It then removes it after loading, so secrets
  208. can stay hidden.
  209. There is some more information that can be found in the linked ticket.
  210. See: https://codeberg.org/supercell/pixiv_down/issues/15
  211. 2024-04-03 mio <stigma@disroot.org>
  212. Improve 'bookmarked' command
  213. A new --skip option was added since it is probably unreasonable to
  214. assume people are happy to sit for however long to download 1600+ works.
  215. To assist with this, the number of *processed* works are printed after
  216. every page, this number includes and works which are no longer available
  217. to download so the --skip option works as expected.
  218. There was also a crash that would occur when an artwork was "masked".
  219. It turns out the API returns an integer artwork ID if the work is masked
  220. instead of a string, so we perform a check for that as well.
  221. 2024-04-03 mio <stigma@disroot.org>
  222. Update .gitignore
  223. Move pixiv_down version info to separate module
  224. 2024-04-02 mio <stigma@disroot.org>
  225. Begin implementing 'bookmarked' command
  226. See: https://codeberg.org/supercell/pixiv_down/issues/15
  227. Add list with supported content types to man pages
  228. Add pixiv_down-novel.1
  229. Add pixiv_down-following.1
  230. Write pixiv_down-daily.1
  231. Update CHANGELOG.md
  232. 2024-04-02 mio <stigma@disroot.org>
  233. Use std.getopt rather than custom argument parsing
  234. The only place it hasn't been used is in app.d, since std.getopt doesn't
  235. support "commands", so there would be no benefit.
  236. See: https://codeberg.org/supercell/pixiv_down/issues/24
  237. 2024-04-02 mio <stigma@disroot.org>
  238. Remove deprecation message for config base_folder
  239. As with the change in configuration file name, this setting will
  240. now be supported indefinitely.
  241. See: 90e48e436d8990d0f5d9d6c7d6158799f5e94b3f
  242. 2024-04-02 mio <stigma@disroot.org>
  243. update mlib/directories to 0.4.0
  244. 2024-04-01 mio <stigma@disroot.org>
  245. Change the access and modification times of GIFs
  246. Support PIXIV_DOWN_SESSID environment variable
  247. Closes: https://codeberg.org/supercell/pixiv_down/issues/23
  248. 2024-03-31 mio <stigma@disroot.org>
  249. Use real account IDs in pixiv_down-artist.1
  250. They stand out a bit more than 1 2 3
  251. Add installation of manual pages to Makefile.in
  252. Fix reference in pixiv_down.1
  253. Add manual page for 'pixiv_down prune'
  254. 2024-03-31 mio <stigma@disroot.org>
  255. Change default configuration file name
  256. Now called 'pixiv_down.conf'. Reason? PIXIV_DOWN.CONF(5) fits better
  257. than PIXIV_DOWN-SETTINGS.CONF(5).
  258. The old name will be supported indefinitely.
  259. 2024-03-31 mio <stigma@disroot.org>
  260. Begin writing manual pages
  261. 2024-03-30 mio <stigma@disroot.org>
  262. Fix GIFs not being recreated after SIGINT [GM]
  263. When calling WriteImages, GraphicsMagick will write each frame of the
  264. GIF directly to the provided output filename. In our case that was the
  265. final '.gif', which meant that with the changes introduced in commit
  266. f09e5e180703b67861954b587775ec579f78d749 pixiv_down wouldn't attempt to
  267. recreate the GIF if it had previously been interrupted with ^C, for
  268. example.
  269. Because "fTemporayPath" ends with '.part', which isn't an image type,
  270. GraphicsMagick assumes the output image is the same format as the input.
  271. To prevent this, we specifically set the first frame's "magick".
  272. Fixes: https://codeberg.org/supercell/pixiv_down/issues/21
  273. 2024-03-30 mio <stigma@disroot.org>
  274. Fix incorrect progress reporting for Ugoira
  275. See: https://codeberg.org/supercell/pixiv_down/issues/20
  276. Makefile.in improvements
  277. pixiv_down will only rebuild if there have been new commits since the
  278. last build.
  279. Check if Ugoira exists before downloading ZIP
  280. Fixes: https://codeberg.org/supercell/pixiv_down/issues/18
  281. 2024-03-29 mio <stigma@disroot.org>
  282. Update README with new build instructions
  283. Mention the new configure script and clarify that macOS does not need
  284. GraphicsMagick.
  285. configure script fixes for macOS
  286. Generate githash with Makefile.in
  287. Replace Makefile with configure script
  288. The end goal is to allow macOS to build using ./configure && make
  289. without having to change anything. (This currently works on linux)
  290. 2024-03-10 mio <stigma@disroot.org>
  291. Fix macOS compilation
  292. Update README
  293. Update CHANGELOG
  294. Add GIFWriter and ImageReader for GraphicsMagick
  295. ugoira support for macOS
  296. While it may have been possible to create ugoira using GraphicsMagick,
  297. this makes use of CoreFoundation and ImageIO provided by macOS.
  298. Add configuration for macOS
  299. Improve POSIX support for nt.file.setTimes
  300. Update mlib/directories to 0.3.0
  301. Update mlib/trash.d to 0.4.0
  302. 2024-03-07 mio <stigma@disroot.org>
  303. Log Ugoira mimetype in debug
  304. 2024-02-03 mio <stigma@disroot.org>
  305. v2024.02
  306. 2024-01-27 mio <stigma@disroot.org>
  307. Don't use page number in filename if single page
  308. Illustrations with multiple pages and Manga will continue to use the
  309. page number and be located in a sub-directory. For illustrations with
  310. a single page, his just re-creates the behaviour before
  311. 91005492bb34ba497de6e73e1aa5368a2b573083
  312. 2024-01-26 mio <stigma@disroot.org>
  313. Update 'help' help with novel support
  314. Fixes for -preview=in
  315. I'm not going to force compilation with -preview=in yet. But this is in
  316. preparation for when I do, or when (if ever) it becomes the default.
  317. Allow DFLAGS if used in Makefile
  318. Add PHPSESSID HowTo
  319. Closes: https://codeberg.org/supercell/pixiv_down/issues/14
  320. Add --sfw-only option to daily command
  321. Closes: https://codeberg.org/supercell/pixiv_down/issues/12
  322. Update CHANGELOG
  323. Support for downloading an artist's novels
  324. Closes: https://codeberg.org/supercell/pixiv_down/issues/8
  325. Provide some documentation to nt.prelude.Optional
  326. Implement downloading daily novels
  327. See: https://codeberg.org/supercell/pixiv_down/issues/8
  328. 2024-01-25 mio <stigma@disroot.org>
  329. Add ability to download novels
  330. Currently only works via the new 'novel' command, but fetching all
  331. novels from an account, and fetching the latest novels from all followed
  332. accounts will be implemented soon.
  333. See: https://codeberg.org/supercell/pixiv_down/issues/8
  334. 2024-01-25 mio <stigma@disroot.org>
  335. Build individual object files
  336. Implement --skip-manga and --skip-illust
  337. Closes: https://codeberg.org/supercell/pixiv_down/issues/7
  338. Create a spinner when downloading/creating Ugoira
  339. Move runSpinner from prune.d to util.d
  340. 2024-01-23 mio <stigma@disroot.org>
  341. Remove dependency on pixivd
  342. Small tidy up
  343. Move following command to separate file
  344. Add nothrow variant of std.conv
  345. Add pixiv.fetchUser
  346. Replaces pixivd.client.Client.fetchUserAll. With this, the only
  347. remaining method to port is fetchFollowing.
  348. Add private makeRequest
  349. Add pixiv.fetchUserProfile
  350. Replaces pixivd.client.Client.fetchUserAll
  351. Move daily command in to separate file
  352. 2024-01-23 mio <stigma@disroot.org>
  353. Rewrite daily command to use pixiv module
  354. I have also removed the 'restrict' option, which would allow people to
  355. specify whether to download content that is either R18, Safe, or Both.
  356. The option never actually did anything, with the daily command always
  357. downloading Both content types. The option may come back.
  358. See: https://codeberg.org/supercell/pixiv_down/issues/12
  359. Closes: https://codeberg.org/supercell/pixiv_down/issues/13
  360. 2024-01-23 mio <stigma@disroot.org>
  361. Use Flag rather than bool in term.d
  362. 2024-01-21 mio <stigma@disroot.org>
  363. Build object files for graphicsmagick_c
  364. This won't really speed up build times yet, but once pixivd is removed the
  365. files in source/ can be compiled to object files and hopefully that will
  366. speed up build times a little.
  367. 2024-01-21 mio <stigma@disroot.org>
  368. Add support for downloading Ugoira in pixiv
  369. This took a while to implement because I had recently updated
  370. GraphicsMagick versions and the previous code was incorrect for creating
  371. GIFs. It took some time to figure it out (completely missing the entry
  372. in the NEWS file...) All that needed to change was adding the
  373. GetFirstImageInList call.
  374. Closes: https://codeberg.org/supercell/pixiv_down/issues/10
  375. 2024-01-21 mio <stigma@disroot.org>
  376. Fix incorrect format
  377. Fix dynamic build linkage
  378. 2024-01-20 mio <stigma@disroot.org>
  379. Separate pixiv API requests and downloading
  380. 2024-01-20 mio <stigma@disroot.org>
  381. Remove ProgressMonitor and downloadIllust
  382. The functionality is provided by downloadArtworkWith and
  383. downloadArtworkWithPageNotifier.
  384. Work still needs to be done on supporting Ugoira and novels.
  385. 2024-01-20 mio <stigma@disroot.org>
  386. Improve progress reporting for some commands
  387. Improved for the artist, artwork, and daily commands.
  388. 2024-01-20 mio <stigma@disroot.org>
  389. Implement downloading for pixiv.downloadArtwork
  390. All that is missing is support for ugoira and novels.
  391. See: https://codeberg.org/supercell/pixiv_down/issues/11
  392. 2024-01-18 mio <stigma@disroot.org>
  393. Add prune command to CHANGELOG
  394. Remove ability to build with local archives
  395. Use either make (git submodule update --init && make) or dub.
  396. 2024-01-18 mio <stigma@disroot.org>
  397. Begin implementation of pixiv.downloadArtwork
  398. The intention is to replace pixiv.downloadIllust with this new function.
  399. Currently it's not complete (doesn't even download!) but there shouldn't
  400. be too much more work.
  401. Then the pixiv module needs a method of supporting Ugoira.
  402. 2024-01-18 mio <stigma@disroot.org>
  403. Remove excessive private modifier
  404. Move artist command to separate file
  405. Replace phobos setTimes with nothrow version
  406. This was the start of an attempt to make pixiv.setDate nothrow, however,
  407. considering that Systime.fromISOExtString and dirEntries can both throw,
  408. I'm not sure that will happen :(
  409. Move artwork command to separate file
  410. Log execution date
  411. 2024-01-16 mio <stigma@disroot.org>
  412. Create data directory if needed in resetSessionID
  413. check for GraphicsMagick before building
  414. 2024-01-14 mio <stigma@disroot.org>
  415. Move downloadIllust function to new pixiv module
  416. The new pixiv module will be where all pixiv-related functionality will
  417. be located.
  418. Move convertToString to util.d
  419. Also mark it as nothrow
  420. 2024-01-13 mio <stigma@disroot.org>
  421. Add prune documentation to README
  422. Update mlib.configparser to 0.5.2
  423. Move configparser module to mlib
  424. Move directories module to mlib package
  425. 2024-01-13 mio <stigma@disroot.org>
  426. Fully replace std logger with custom logger
  427. Rewrite the logger module to use C functions since the D stdio seemed to
  428. be locking incorrectly when calling too many write functions in quick
  429. succession (messages weren't being written after the first few).
  430. This also adds an environment variable PIXIV_DOWN_LOG_LEVEL which (at
  431. startup) sets gMinLogLevel if the value is valid.
  432. 2024-01-13 mio <stigma@disroot.org>
  433. Add prune command
  434. This replaces the pixivd_tools' remove_unfollowed program.
  435. 2024-01-11 mio <stigma@disroot.org>
  436. Remove pixiv_down.png
  437. A remanent from when I was going to provide an AppImage for
  438. pixiv_down.
  439. 2024-01-05 mio <stigma@disroot.org>
  440. Add source/mlib/search_params
  441. 2024-01-04 mio <stigma@disroot.org>
  442. Remove hard coding linux terminal
  443. A leftover from having the incorrect escape codes.
  444. 2024 pt.1
  445. Update README
  446. Fix erroneous exit in GMagick_Dynamic builds
  447. main.loadLibGM was returning the value of
  448. graphicsmagick_c.config.loadGraphicsMagick
  449. which returns false when the library was
  450. correctly loaded, but some symbols could
  451. not be found. pixiv_down should be able
  452. to run under these conditions still.
  453. generate githash with dub
  454. make clean
  455. Fix colour output for tmux
  456. Replace GNUmakefile with Makefile
  457. Has been tested with both GNU Make and NetBSD Make (bmake).
  458. Deprecate fetch_dependencies script
  459. I won't remove the script, but I also won't be testing it.
  460. Either use git submodules or dub.
  461. Add ability to build using git submodules & make
  462. 2023-12-10 mio <stigma@disroot.org>
  463. Use custom logging for 'compact' command
  464. update pixivd
  465. 2023-12-09 mio <stigma@disroot.org>
  466. Update CHANGELOG for 'compact' command
  467. Implement 'compact' command
  468. Replaces the pixivd_tools/pixiv_combine_users found at
  469. https://osdn.net/users/nemophila/pf/pixivd_tools/wiki/FrontPage
  470. 2023-11-28 mio <stigma@disroot.org>
  471. Fix unittest compilation
  472. Reformat and update CHANGELOG
  473. Log compilation information to LogFile
  474. Make loadConfig public
  475. have makeSafe treat more characters as invalid
  476. Turns out this is really dependent on the filesystem's format
  477. (e.g. ext4, exfat, ntfs, etc.). This will assume unicode is valid, but
  478. will restrict the possible characters to 'work characters', periods, and
  479. hyphens.
  480. 2023-10-29 mio <stigma@disroot.org>
  481. Move configuration to separate module
  482. Slowly going around and breaking down the main file.
  483. Add .editorconfig
  484. Replace global 'log' with stdThreadLocalLog
  485. 2023-10-26 mio <stigma@disroot.org>
  486. Improve display of skipping followed artists
  487. Change the behaviour so that using --skip <num> won't print:
  488. 'Downloading artist 1 of <total>'
  489. but instead print:
  490. 'Downloading artist <num + 1> of <total>'.
  491. Generate entire 'git_version' file.
  492. Implement command to reset PHPSESSID
  493. 2023-10-25 mio <stigma@disroot.org>
  494. Log data directory
  495. Helps locate the file when an update of PHPSESSID is required.
  496. Need to add an option for changing this...
  497. 2023-10-25 mio <stigma@disroot.org>
  498. Replace OSDN repository links
  499. The servers haven't been reliable for a few months.
  500. 2023-09-30 mio <stigma@disroot.org>
  501. Cleanup project imports
  502. 2023-09-29 mio <stigma@disroot.org>
  503. Fix trailing percentage for previously downloaded
  504. e.g.:
  505. Previously downloaded page 1/2.%).
  506. Previously downloaded page 2/2.
  507. 2023-09-29 mio <stigma@disroot.org>
  508. Further improvements to the progress bar
  509. Still can't say I'm completely happy with this (trailing newlines and
  510. single-paged illustrations not changing the final message to 'Finished')
  511. but it's an improvement.
  512. I did spend a while trying to get a graphic progress bar, but couldn't
  513. integrate the UI in a way that I liked (the current implementation looks
  514. better IMO).
  515. See: https://codeberg.org/supercell/pixiv_down/issues/2
  516. 2023-09-27 mio <stigma@disroot.org>
  517. Use same indentation for options in help messages
  518. Pad 'Already downloaded page X' values
  519. Also considering changing the message to 'Already downloaded page x/y'
  520. 2023-08-16 mio <stigma@disroot.org>
  521. fix resuming a previous download of a manga.
  522. previously, if you cancelled a manga download partway, attempting to
  523. resume the download would result in the "Already downloaded" message,
  524. this was fixed with a commit[1] in pixivd, so we're just updating the
  525. version here.
  526. [1]: 1085361d86366542741e8ae5b845fed74c0a8aa5
  527. 2023-08-13 mio <stigma@disroot.org>
  528. Add initial version of a progress bar
  529. Not the final design, but at least it shows which page we're downloading
  530. and how far through we are.
  531. See: https://codeberg.org/supercell/pixiv_down/issues/2
  532. 2023-08-07 mio <stigma@disroot.org>
  533. Update pixivd
  534. This fixes an issue with GIF (Ugoira) not having a valid filename when
  535. calling the GraphicsMagick WriteImages function.
  536. Fixes https://codeberg.org/supercell/pixiv_down/issues/9
  537. 2023-08-07 mio <stigma@disroot.org>
  538. Change version identifier to date+hash
  539. 2023-07-23 mio <stigma@disroot.org>
  540. Update MagickD and PixivD versions
  541. 2023-07-16 mio <stigma@disroot.org>
  542. Update CHANGELOG.md
  543. - Reorganize some sections.
  544. - Downloads both manga and illustrations by default
  545. - Temporary(?) removal of `--limit` option for following command.
  546. Fix falling back to user picture directory
  547. Fix loading config when dir exists but not file
  548. 2023-06-24 mio <stigma@disroot.org>
  549. Add CHANGELOG.md
  550. Re write the 'following' command.
  551. I removed the --limit option since it's use is rather... limited. It'd
  552. be better served as an actual limit on the number of accounts to
  553. download, rather than the number of accounts per-page.
  554. Replace custom logger with Phobos FileLogger
  555. Rewrite 'following' help.
  556. 2023-06-23 mio <stigma@disroot.org>
  557. Create a new log file each run
  558. 2023-06-22 mio <stigma@disroot.org>
  559. Improve 'artwork' command
  560. The main change is the --group-errors option which will only print the
  561. errors just before the command has finished executing, rather than
  562. immediately after the error occurrs.
  563. This means you don't have to go searching for any errors after
  564. downloading the artworks.
  565. 2023-06-22 mio <stigma@disroot.org>
  566. Re-work 'artist' command
  567. This really addressed two issues regarding the artist command. Some of
  568. the messaging could use improvement, but I haven't quite figured out how
  569. I want this to work with the progressbars that will be implemented.
  570. See Also:
  571. Change default behaviour of 'artist' command
  572. https://codeberg.org/supercell/pixiv_down/issues/4
  573. Allow downloading of multiple artists when using the artist cmd
  574. https://codeberg.org/supercell/pixiv_down/issues/5
  575. 2023-06-20 mio <stigma@disroot.org>
  576. Clarify README notice
  577. Improve the 'daily' help
  578. I also took the liberty to re-format the dailyHandle function and
  579. improve some of the messaging there as well.
  580. 2023-06-17 mio <stigma@disroot.org>
  581. Update pixiv_down to use new directories API
  582. Update directories module to v0.2.0
  583. There are quite a few changes to the API which I'll need to address, but
  584. the big addition is support for Windows -- making us a step closer to
  585. supporting Windows in pixiv_down.
  586. Move config reading out of main
  587. Move loading of GraphicsMagick out of main
  588. Improve help message for artist command
  589. Remove `printMainHelp`
  590. 2023-06-16 mio <stigma@disroot.org>
  591. Reformat main function
  592. Improve 'unknown command' message
  593. 2023-06-15 mio <stigma@disroot.org>
  594. Replace ': ' with 'v' for version info
  595. Futher improve default help message
  596. Provide better default help message
  597. This will be displayed when there are no arguments provided or
  598. when -h/--help/help is provided.
  599. 2023-06-14 mio <stigma@disroot.org>
  600. Better handle invalid dates for --daily
  601. 2023-04-25 mio <stigma@disroot.org>
  602. Change 'daily' behaviour when begin and end equal
  603. 2023-01-28 mio <stigma@disroot.org>
  604. Initial commit