Log of #mupdf at irc.freenode.net.

Search:
 <<<Back 1 day (to 2017/05/10)20170511 
sebras turludu: message received. you have successfully connected to #mupdf. :)01:26.47 
  tor8: -old:sebras/master was updated last night, what mess have I still not cleaned up? ;)12:14.46 
  we spoke about the .iml file, and I'm not sure you are satisfied with that..?12:15.24 
  I know android studio automagically creates it, but I don't know why or if you can ask it not to or what the file is used for.12:15.56 
tor8 sebras: gradle doesn't have an installRelease target12:21.34 
  the 'make run' target tries to launch LibraryActivity ... it's called ChoosePDFActivity in -old12:21.47 
  the compileSdkVersion is 25 ... that doesn't work with permissions granted through the AndroidManifest.xml file12:22.16 
  or was it targetSdkVersion?12:22.24 
  do we really use the appcompat library?12:22.43 
sebras I'm confused as to what values I should be using for compileSdkVersion as I needed to change it for the gradle lint target to work.12:24.19 
  I'll retry that and see if it magically works now.12:25.26 
tor8 the docs suggest to use the same as targetSdkVersion12:26.04 
  and then they also suggest to use buildToolsVersion the same as compileSdkVersion, but that's patently false and does *not* work12:26.46 
  question I guess is which point release to put in buildToolsVersion12:27.00 
sebras yeah, I set all of them to 16 just now.12:27.45 
tor8 do we need to set applicationId?12:27.55 
sebras except for buildtools.12:27.55 
  the docs just say that this is used to set the applicaiton id, and how to get at it from inside java.12:28.27 
  I haven't found anyone questioning why it is duplicated between gradle and AndroidManifest.xml yet.12:28.51 
tor8 /home/tor/src/mupdf-droid-old/build/intermediates/res/merged/debug/values-ldltr-v21/values-ldltr-v21.xml:3: AAPT: Error retrieving parent for item: No resource found that matches the given name 'android:Widget.Material.Spinner.Underlined'. fails when I set compileSdkVersion to 1612:28.54 
sebras if I read https://developer.android.com/studio/releases/build-tools.html# correctly then version 17 is the earliest build-tools release and it corresponds to api level 1712:30.12 
  that's what I got before. in the lint target.12:30.21 
  but now I don't see that error message.12:30.29 
tor8 sebras: could be the android:textAppearance="?android:attr/textAppearanceMedium" lines?12:32.06 
sebras that doesn't explain why I no longer see the error message though.12:32.29 
tor8 make distclean12:32.48 
  I get fewer and fewer such errors the newer I put compileSdkVersion at12:33.30 
  with compileSdkVersion 23 I only get 2 such errors (android:TextAppearance.Material.Widget.Button.Borderless.Colored and android:TextAppearance.Material.Widget.Button.Colored)12:34.19 
  with version 24 I get no such errors12:34.26 
sebras I make distcleaned but it still works! ugh, I really like this environment.12:35.09 
  oh I just removed the appcompat dependency, it might be that causing the issues perhaps..?12:37.26 
tor8 sebras: after changing to version 24 and building successfully, I chaonged back to 16 and it built12:37.36 
  but cleaning it with distclean and building afetr that fails12:37.43 
  sebras: highly likely12:37.54 
sebras tor8: yes, that's it, if I remove the dependency block at the end of build.gradle it works better.12:38.08 
tor8 I don't think we use any appcompat classes in -old (or -mini)12:38.34 
  the -nui code might though12:38.38 
  sebras: yes, with compileSdkVersion 16 and no dependencies block, it builds12:39.23 
sebras I'm compiling fine without it, so I updated sebras/master again.12:39.24 
tor8 com.artifex.mupdf.mini/.ChoosePDFActivity still has the -mini package name :)12:41.16 
  and the question is if we want to do something with the ABI lists12:41.53 
sebras fixed.12:42.33 
tor8 splits.abi.include() takes a vararg list of strings12:43.24 
  whereas defaultConfig.ndk.abiFilters takes a Set<String>12:43.34 
  we could add all abi targets, but that's going to lead to looong compile times which is annoying12:44.50 
sebras tor8: actually mips fails with the latest ndk.12:45.17 
tor8 oh lovely12:45.24 
sebras due to a gcc internal issue it seems.12:45.30 
tor8 any reason why? (other than google not testing their crap)12:45.34 
jogux isn't gcc deprecated these days?12:45.52 
sebras it fails in one of the fitz things. draw-device.o or something like that.12:45.59 
  jogux: ok, so clang, the other gcc.12:46.08 
jogux ah :-)12:46.15 
  not so good.12:46.18 
sebras jogux: also I'm not sure if setting compileSdkVersion or these things affects what compiler is used (it ought to).12:46.38 
  tor8: if I set compileSdkVersion to 17.0.0 it downloaded that build-tools but then complains: Caused by: org.gradle.api.GradleException: The SDK Build Tools revision (17.0.0) is too low for project 'mupdf-android-viewer-old'. Minimum required is 25.0.012:47.07 
  though I can't see where this is mentioned.12:47.17 
tor8 you mean buildToolsVersion12:47.41 
  I ran into that too12:47.45 
sebras yeah, seems like this migth be cached elsewhere?12:48.00 
tor8 I suspect the build tools < 25 don't work with gradle12:48.19 
  sebras: was that with ndk r14b?12:50.42 
sebras tor8: yes.12:51.01 
  well, that's the ndk I installed at one point.12:51.11 
  who knows what has been updated since then.12:51.17 
tor8 and they *still* haven't made a proper 64-bit linux release12:51.25 
  still depending on users having multi-arch and installing 32-bit librarires12:51.41 
  there's a r15 beta12:52.02 
sebras starts studio to try to figure out what is installed.12:52.05 
  tor8: NDK 14.1.3816874 is what I have.12:52.47 
  and you are correct, build-tools corresponds to gradle-version it seems: http://stackoverflow.com/questions/23999714/android-studio-gradle-buildtools-revision#2410213412:54.02 
jogux The Android build system / SDK arrangement really does seem overly complex. :(12:55.58 
tor8 jogux: and it now all seems to be wrapped up by android-studio so no more doing things on a headless build server12:56.23 
sebras jogux: wait until you are forced to build it inside a docker container because no one knows how to install things that has dependencies any more.12:56.44 
jogux tor8: er. really. didn't know that part yet. The last time I had to do that I was still available to invoke the sdk manager in headless mode. ffs. :(12:57.54 
sebras jogux: tor8: I think they have revived some of the commands in sdkmanager and avdmanager lately, but I'm not sure if they did that as a reluctant concession to the headless users.12:59.30 
  jogux: also if gradle didn't change so much I guess this would all be much easier.13:01.48 
  tor8: ok, so I tried a few different versions of gradle build and the gradle wrapper, this affects what version of buildtools are required.13:06.09 
  or rather what minimum version is allowed.13:06.17 
  tor8: seems like we are able to compile properly starting with gradle 2.2.1 which implies build-tools 19.1.0 and gradle wrapper 3.313:10.34 
tor8 yeah, now I just gotta wait a couple of minutes for android studio to do its Indexing before the "Tools > Android" menu will appear13:11.10 
  so that I can use it to install the NDK13:11.44 
sebras you might be able to do that using the sdkmanager CLI tool..?13:13.45 
  but I have not learned how yet.13:13.52 
tor8 dunno. I'm trying to figure out the steps so I can put it in the README that we can point clueless users to13:14.10 
sebras sdkmanager --list shows what packages you have installed.13:15.15 
tor8 It seems the best way is to say "Install Android Studio, then use Android Studio to install the NDK. Ask Google for instructions on how to do that, because they keep changing the steps every two weeks."13:15.17 
sebras sdkmanager ndk-bundle13:15.38 
  that apparently installs the ndk.13:15.43 
tor8 sebras: "which sdkmanager"13:15.47 
  I have no tool in my path with that name13:15.54 
sebras android/sdk/tools/bin/sdkmanager13:16.02 
  next to where the binary monkeyrunner is located.13:16.36 
tor8 oh great, yet another directory to add to my $PATH...13:17.00 
  export PATH=$PATH:$HOME/Android/Sdk/tools/bin13:17.12 
  export PATH=$PATH:$HOME/Android/Sdk/platform-tools13:17.13 
  export PATH=$PATH:$HOME/Android/Sdk/ndk-bundle13:17.13 
sebras I have tools tools/bin platform-tools ndk-bundle and build-tools/$BUILD_TOOLD_VERSION13:18.03 
tor8 ReadMe.txt in mupdf-droid-old is woefully out of date13:19.51 
sebras much likely.13:20.09 
  very likely?13:20.15 
  I blame todays test.13:20.25 
  today's.13:20.29 
  agh! :)13:20.33 
tor8 sebras: well, one thing at a time13:20.54 
sebras ok, sebras/master updated again, now with as old gradle/build-tools as I can successfully compile with.13:23.23 
tor8 question though, do we want the oldest or newest? :)13:24.53 
sebras yes.13:25.20 
  I have no idea.13:25.23 
tor8 I suspect we'll be better off in the long run by picking the newest at the time13:26.00 
  and then *never* changing!13:26.05 
  okay, maybe not the second part :)13:26.12 
sebras I'm thinking that the minSdkVersion ought to be what determines what version of android we work ok.13:26.19 
  and using the latest version of gradle/build-tools most likely.13:26.32 
tor8 minSdkVersion defines which APIs you're allowed to use13:27.00 
  targetSdkVersion sets the level of backwards compatibility cruft the system will apply to your app when its run13:27.18 
sebras tor8: I'm not sure I know what is included in the build-tools.13:27.20 
tor8 so the idea is that you set minSdkVersion as low as you can go13:27.36 
sebras because that's not the compiler, right?13:27.39 
tor8 and targetSdkVersion as high as you've tested the code13:27.42 
  and compileSdkVersion I guess is which compiler/classlibrary/whatever is used13:28.05 
  for -mini I've set minSdkVersion to 16 and targetSdkVersion to 2113:28.23 
  anything >21 requires extra crap for doing runtime permissions which I haven't gotten around to13:28.41 
sebras yeah, but because your environment and mine are not the same so I'm wary of going to high.13:28.55 
tor8 we've tested with targetSdkVersion 16 so let's use that13:29.13 
  anything newer and you get different theme files etc13:29.21 
  which changes the appearance13:29.24 
  the theme and appearance is also part of the backwards compatibility stuff that gets applied when you set targetSdkVersion13:29.51 
sebras oh... I just reset to start testing with targteSdkVersion and compileSdkVersion == 2113:30.22 
  Running dex in-process requires build tools 23.0.2.13:30.37 
  For faster builds update this project to use the latest build tools.13:30.37 
  I see this message btw.13:30.42 
tor8 I just installed android-studio fresh13:31.32 
  and it's installed "Android SDK Tools" 26.0.213:31.43 
  and "Android SDK Platform-Tools" 25.0.513:31.54 
  dunno what goes where13:32.06 
  and why there are two such similarly named packages13:32.16 
  right, platform-tools is "adb"13:32.49 
  and tools is everything else13:33.02 
sebras how do you kno?13:33.08 
  know13:33.10 
tor8 I googled and found the release notes13:33.38 
  I mean I duck duck went...13:34.33 
  https://developer.android.com/studio/releases/platform-tools.html13:34.35 
  https://developer.android.com/studio/releases/sdk-tools.html13:34.40 
  and gradle is now at 2.3.113:35.47 
sebras https://developer.android.com/studio/releases/build-tools.html13:35.50 
tor8 https://developer.android.com/studio/releases/gradle-plugin.html#revisions13:36.00 
  soooo many bloody pointless packages13:36.26 
  it reminds me of trying to compile gcc13:36.38 
  impossible unless you have the exact correct patch-level version of EVERY single dependency. not documented anywhere, of course.13:37.03 
sebras tor8: no, no! compiling gcc for arm was WAAAY more straifrowrad (for me)13:37.06 
  straight forward13:37.17 
  though I just used the latest of all dependencies and it magically worked.13:37.42 
  so compiling with targetSdkVersion and compileSdkVersion both set to 16 worked as well.13:38.16 
tor8 yup. I'm just testing with buildTools 25.0.3 and gradle plugin 2.3.113:39.03 
  but first I did rm -rf ~/.gradle13:39.15 
  cleared out 2G of crap13:39.23 
sebras tor8: mine is 6.5Gbyte, and because I dont't understand this crap I guess I keep it.13:42.05 
tor8 I had a *lot* of old gradle versions in there13:42.20 
  everything it's ever downloaded13:42.26 
sebras gradle-2.10-all gradle-2.1.1-all gradle-2.11-all gradle-2.12-all13:43.00 
  gradle-2.14.1-all gradle-2.14-all gradle-2.2.1-all gradle-2.2-all13:43.00 
  gradle-2.3-all gradle-2.4-all gradle-2.5-all gradle-2.6-all gradle-2.7-all13:43.00 
  gradle-2.8-all gradle-2.9-all gradle-3.0-all gradle-3.1-all gradle-3.2.1-all13:43.00 
  gradle-3.2-all gradle-3.3-all gradle-3.4.1-all gradle-3.4-all13:43.00 
  I'm not surprised at all.13:43.05 
tor8 oh, there's a gradle 3.4?13:43.20 
  nope, it's even up to 3.5!13:43.35 
sebras yes, but don't confuse the gradle version with the gradle wrapper version13:43.52 
  the latter is what you specify in build.gradle13:44.00 
  the former is what you set in gradle/wrapper/*.properties13:44.08 
  how gradle wrapper and gradle relate I'13:44.18 
  m not sure about.13:44.22 
tor8 I don't think you specify either in build.gradle13:44.53 
  in build.gradle you specify the android plugin for gradle13:45.05 
sebras hm...13:46.11 
  ok, so the android plugin for gradle and then in the gradle wrapper what gradle version is to be used.13:46.48 
tor8 using 3.5-bin instead of 3.5-all reduced the amount of crap it downloaded in ~/.gradle13:47.58 
  100Mb less13:48.07 
sebras that's nice, but what does that mean for usage?13:48.24 
tor8 it didn't install all the javadoc html files, etc13:48.25 
sebras oh that's the difference.13:48.31 
  now, why would you use gradle 3.5?13:48.42 
tor8 because android has brainwashed me to always want the newest and shiniest?13:49.12 
sebras ok.13:49.18 
tor8 and because nobody ever tests anything against older versions...13:49.26 
  if they test anything at all13:49.34 
sebras so neither of us should really be doing android stuff, but you know that right?13:49.49 
tor8 yes. all too well.13:49.58 
sebras so gradle 3.2 is included in android studio.13:50.05 
  android/studio/gradle/gradle-3.2/bin/gradle13:50.28 
tor8 hm.13:50.44 
  so you think by using gradle-wrapper and gradle > 3.2 might cause trouble?13:50.57 
sebras would gradle > 3.2 be accessible to android studio users?13:51.16 
  I have no idead what would be downloaded and how and why.13:51.28 
tor8 nah. look what happens when you try to run the gradle bundled...13:51.37 
  > Failed to apply plugin [id 'com.android.application']13:51.43 
  > Minimum supported Gradle version is 3.3. Current version is 3.2. If using the gradle wrapper, try editing the distributionUrl in /home/tor/src/mupdf-droid-old/gradle/wrapper/gradle-wrapper.properties to gradle-3.3-all.zip13:51.43 
sebras oh.. so it actually says to use -all...13:52.08 
tor8 sebras: on tor/master my edits13:52.09 
  https://gradle.org/install#with-the-gradle-wrapper suggests -bin.zip13:52.33 
sebras oh.. 3.5 looks very differently.13:57.39 
  tor8: sebras/master adds -j4 for the generate step.14:04.16 
tor8 sebras: sounds reasonable, even though the generate step is not exactly a slow one14:11.45 
  I started writing a java tool to do the hexdump14:11.54 
sebras I'm running another testcompilation using studio from a distcleaned state.14:14.34 
  tor8: that worked.14:16.44 
  tor8: alright, so I merged the updates into the switch commit and repushed sebras/master14:22.13 
  I have been contemplating adding a make lint target triggering the corresponding lint target in gradle.14:22.40 
  how do you feel about that?14:22.44 
  since I'm seeing about 100 warnings I'm guessing this is something we ought to address in the end.14:23.04 
tor8 sebras: go for it14:30.05 
sebras tor8: what does this mean for pushing the current patchset?14:32.49 
tor8 sebras: nothing? you can add the 'make lint' target now or later. the commits as on sebras/master now LGTM.14:36.18 
sebras tor8: nice.14:43.32 
  I've added the lint target.14:43.41 
  tor8: one quick last look and then I'll push.14:43.48 
  look for you that is. :)14:43.57 
tor8 sebras: LGTM14:44.18 
sebras tor8: yey! :)14:44.49 
  pushed.14:45.05 
  tor8: one question is about the corresponding patches on tor/jni. do you need them?14:45.31 
tor8 I'll rebase the jni stuff later14:48.35 
  right now I've got to go14:48.50 
  g'night!14:48.54 
sebras g'night!14:49.00 
 Forward 1 day (to 2017/05/12)>>> 
ghostscript.com #ghostscript
Search: