IRCaBot 2.1.0
GPLv3 © acetone, 2021-2022
#i2p-dev
/2022/11/13
@eyedeekay
&eche|on
&zzz
+R4SAS
+RN
+acetone
+hottuna
+postman
+weko
An0nm0n
Arch
FreefallHeavens
Hidenet1
Irc2PGuest19856
Irc2PGuest2827392
Irc2PGuest33877
Irc2PGuest44409
Irc2PGuest68850
Irc2PGuest95543
Leopold
Onn4l7h
Onn4|7h
Palimpsest
ProRu
Sleepy
Soni
T3s|4_
Teeed
aargh3
admin_
anon3
b3t4f4c3__
cheddah
dr|z3d
eyedeekay_bnc
itsjustme_
j6
limak
not_bob_afk
orignal_
profetikla
qend-irc2p
rapidash
tbqdrn
theglitch
w8rabbit
x74a6
yourtrueself
zer0bitz
zzz okey dokey, good luck over on the cannon side, holler if you can prove it's a canon problem :)
dr|z3d haha, thanks.
dr|z3d from the looks of things, it appears the issue lies with the script, not the underlying code. someone got a bit overexcited with the grep command: eep_url="$(echo $1 | grep -iEo '(http|https)://[a-z0-9./?=_%:-]*')"
dr|z3d it appears ; and & should also feature there.
dr|z3d ok, looks like it's fixed. grep issue.
dr|z3d sorry for the distraction, zzz.
RN thanks zzz! username/realname fixed
dr|z3d well done for chasing the issue up, RN. I'd vaguely noticed it, but not enough to pursue it.
dr|z3d I'm seeing quite a few routers on the temp blocklist due to "Bad introduction data".. don't recall seeing that before.
dr|z3d ok, maybe not quite a few, but 2 right now.
RN hmm...forgot to create override.properties
RN so, two interesting things with my build. the delete button for editing the sidebar doesn't seem to be working. and I can't find the link for the javadocs
RN don't know if the sidebar edit was working before.
dr|z3d javadocs link is only exposed for the advanced sidepanel section.
RN advanced only shows: Certs Changelog Debug Events Jars Jobs LeaseSets NetDB Search Stats Sybils
RN on the side panel
dr|z3d do you have i2p/docs/javadoc/ ?
RN nope
dr|z3d that's why no link.
RN ok, so then I guess I'm saying that ant pkg updaterWithJavaDocs may be broken
dr|z3d that target doesn't exist.
dr|z3d perhaps you meant updaterWithJavadoc ?
RN yes
dr|z3d no need for pkg either if you're building for yourself.
RN well, the first time I ran without pkg but there was no update file created
dr|z3d you can just do ant javadoc and copy the folder to the location indicated above.
RN I'd rather figure out if I did the build wrong
dr|z3d absolutely zero requirement to run ant pkg for an update zip.
dr|z3d just try running ant updaterWithJavadoc
RN running that now
RN ok, build failed
RN i2p.i2p/build.xml:868: Javadoc returned 1
dr|z3d is that exact target listed when you run ant without a target?
RN Let me try a distclean first
RN yes
dr|z3d so check line 868 in your build.xml file and see where the issue may lie.
RN checked when I started and just now when I added the s above
dr|z3d it may be that you need to install some dependencies to generate the javadoc files.
RN I did look at what was mentioned on the new developer page
RN have versions of those installed
RN gettxt and mergethingy and foobar
RN so I presume having pkg there made it do the updater even though the javadoc part failed
RN hmmm
dr|z3d > so check line 868 in your build.xml file and see where the issue may lie.
dr|z3d I'm not even sure you can run multiple targets at the same time, so maybe all you got was any pkg and updater was ignored.
RN windowtitle="I2P Anonymous Network - Java Documentation - API Version ${api.version}">
RN (by the way, pressing tab after ant did not list the targets for me)
dr|z3d try pressing tab twice.
dr|z3d and then pressing y.
dr|z3d (when prompted)
RN it just lists the current directory as if I wanted to type in a file name or sub dir
RN ant [enter] works
dr|z3d tab complete should work, but maybe not in your OS.
RN sure it works if I wanted to pass a file to the command
RN but enough about the wainscoting
RN I'm trying to pick a color for this shed
RN :รพ
RN gettext (GNU gettext-runtime) 0.21
RN gettext seems to be the only needed dependency mentioned so far
dr|z3d try without override.properties, see if it builds then.
RN all that cointains is the builtby string
RN per topic on zzz
dr|z3d just rename the file and see if it builds.
dr|z3d also check the very top of build.xml, specifically the bit about javadoc.
RN trying that, but I didn't have that file when I built the one that I used to update
RN <mkdir dir="./build/javadoc" />
RN that is the only bit bout javadoc near the top
RN java version shouldn't matter? openjdk 18.0.2
dr|z3d the version of java you're using to build with can influence the resulting javadoc format.
dr|z3d but that shouldn't be the issue.
RN ok. but it shouldn't be a stopper.
RN hmmm
dr|z3d just see if you can build the javadocs sesparately, perhaps.
dr|z3d ant javadoc
RN couple minutes...
RN I think I was using the -quiet with ant back in monotone days because so much of the output can look like problems even though things built fine
RN 1 error, 100 warnings and build fail
RN warning: no @param for value & warning: no @return
RN those seem to be common
RN no @throws for java.lang.Throwable
RN don't know where to start with all that
RN pffft... 12 secconds to just build the updater? :)
dr|z3d once it's cached the files on a first run, sure.
dr|z3d could be the java version you're running's causing issues.
RN well, at least I can make dev builds
dr|z3d if you absolutely must have a javadoc reference, you can also manually extract gitlab.com/i2pplus/I2P.Plus/-/jobs/artifacts/master/raw/javadoc.zip?job=Java14
RN I might try that
RN I miss having them. It enables me to better answer questions correctly.
dr|z3d except that link's not working, thanks to gitlab CI limits. if you want a zip, shout and I'll build one.
RN that'd be appreciated. Eventually I expect to make it work here. But a zip would be great.
RN as search engine fatigue is setting in, I think I am done poking at building the javadocs today
RN though, my routers are now both updated with the irc fix
RN or will be within then next 42 minutes
RN s/both/of both flavors/
RN pfft that wasn't better
RN LOL
dr|z3d you're lucky, you've got an upgraded theme with that one.
dr|z3d but it's built with java8, so no inline javascript search.
RN Thank you Doctor.
RN and dr|z3d I seem to recall you said in + dev versions don't change the displayed version number on the side panel right?
dr|z3d they only display a new minor version when zzz decides to bump it :)
RN ah. yeah.
RN I was able to confirm on /jars
RN :)
RN for me?
dr|z3d haha, for you. no, I'm trying to nudge zzz to consider bolting on pack200 support, but it appears he's already done 99% of the background work.
dr|z3d all that's required it seems is apache's pack200.jar in i2p/lib and pack200 updates are go.
RN didn't we used to have those?
dr|z3d until java14, pack200 was natively implemented in java.
RN yeah, ok. that explains the build target in my old monotone script
RN so to update I would do a torify git pull i2pgit.org/i2p-hackers/i2p.i2p.git
RN is it pull?
dr|z3d pull, yeah.
RN and we used to have to kill two revisions
RN I guess that is gone?
dr|z3d there's no killing involved in pulling from git.
dr|z3d if you intend to modify the source, you may want to create a separate branch to do so to avoid having to commit your changes before pulling updates.
dr|z3d git checkout -b newbranchname
dr|z3d that will take the existing branch you're on as a starting point for a new branch.
dr|z3d git branch will tell you what branch you're in, and git checkout <branchname> to switch between them.
RN yeah, not ready to branch yet
dr|z3d if you make changes to a branches source and want to revert to what you last pulled from the repo, 'git checkout .' will revert your local changes.
dr|z3d unlike mtn, git branches only persist for as long as you want them to. creating and destroying branches is trivial.
RN sweet
weko zzz: some incorrect info about i2plib on /docs/api/samv3. i2plib does not support datagrams and raws.
weko Also "supported?" column may be useful. For example, i2plib does not supported for 4 years, i2p.socket for 5 years, txi2p for 3 years
weko Finally, can you add my fork of i2plib in table? codeberg.org/weko/i2plib-fork, SAM version 3.1, streams supported, datagrams and raws do not supported
dr|z3d zzz: so I'm looking into pack200 support, and you've commented core/FileUtil.java to suggest that just dropping the correct .jar file into lib/ will re-enable it.
dr|z3d * Unpack using either Oracle or Apache's unpack200 library,
dr|z3d * with the classes discovered at runtime so neither is required at compile time.
zzz yes, if it's the same library
dr|z3d Haven't yet figured out how to get unpack200.jar out of the apache bundle, or to compile it.
zzz look for the apache class we're looking for
dr|z3d What I did find on my travels, though, is github.com/pack200/pack200 .. not sure if that's a better option?
dr|z3d I've got the commons-compress source tree here.
dr|z3d I _think_ what we'd need is: commons-compress-1.22-src/src/main/java/org/apache/commons/compress/harmony/unpack200
zzz either you have the API we expect, or you rewrite our reflection code for a different API
dr|z3d I'm pretty sure that supplied the correct API.
zzz Blinded message
dr|z3d > Class<?> p200 = Class.forName("org.apache.harmony.unpack200.Archive", true, ClassLoader.getSystemClassLoader());
dr|z3d snap!
zzz if it's not working, uncomment the printStackTrace() calls
dr|z3d it's not working with commons-compress.jar which is why I'm wondering out loud if we somehow need to compile just the unpack200.jar
dr|z3d the build system is mvn, not my strong point, but all I can get it to do is build the full commons-compress.jar
zzz you need the stack trace to see if some dependency is missing
dr|z3d ok, thanks, I'll look into that.
zzz assuming you've already verified you have the Archive class above
zzz unzip the jar or list contents to verify you have Archive
dr|z3d assuming the class is available from commons-compress.jar, which it should be, that should be sufficient? looking at the archive contents, it appears the unpack200 stuff has moved to: /org/apache/commons/compress/harmony/unpack200/
dr|z3d so just change the classpath as indicated above to that?
zzz that's the class name? org.apache.commons.compress.harmony.unpack200.Archive ?
zzz then yeah, you'll have to change it in two places, the detector and the upacker
dr|z3d you typed it out quicker than I could :)
dr|z3d ok, easy enough, just a simple search and replace in FileUtil.java
dr|z3d if this works, are you predisposed to getting it into canon? :)
zzz sure, we can look for both old and new classes
zzz but there's no clean way to actually p200 the releases or updates, so not sure what the point is
dr|z3d well, you'd initially supply the lib with non-p200 updates and installer, and then next time around, enable p200 updates, no?
zzz as long as nobody updated directly from x to x+2
dr|z3d sure, if they did we could just put something in the logs to indicate they need version x update first.
zzz we really don't care about update size much anymore since it's torrents
zzz if you want to do it, start your own news/update feed and knock yourself out
dr|z3d it's torrents, it's also zips on the website, and potentially zips if you decide you want to build dev updates from CI.
dr|z3d if the reduction in size was negligible, obviously would be a waste of time. but going from 15MB -> 5MB isn't negligible.
dr|z3d the reduction in size may be slightly less than that, depends on what's being bundled with the updater. but still, huge saving.
zzz have fun cannon, canon says no
dr|z3d haha, and boo!
dr|z3d you were just as hard work convincing enabling gzip on the console was a good idea. :)
dr|z3d anyways, progress. not a home run, we now have an "Invalid minor segment version" error in the wrapper logs, but it appears that most of the stuff managed to extract before the zip was marked as bad.
dr|z3d it's barfing on addressbook.jar.pack for some reason.
dr|z3d possibly something to do with the version string addressbook is providing.
dr|z3d (or maybe not)
zzz addressbook.jar is probably the first one alphabetically
dr|z3d everything else, according to the logs, appears to extract without issue.
zzz doubt it
zzz that should be fatal
dr|z3d not sure where version 7 of pack200 is being set, or not.
dr|z3d it extracts a bunch of files, barfs on addressbook, and then marks the zip as BAD, at least according to the logs.
zzz you'd have to research java p200 compatibility with apache, for various class versions
zzz or switch to using apache pack200
zzz in my test it's fatal
zzz with CLI
zzz The major and minor version numbers of a Pack200 archive advertise which version of this standard has been generated by a packer. As of 2005 there are two versions, 160.1 for Java 6 and 150.7 for Java 5.
dr|z3d not sure what that means in this context, given most of the files seem to unpack ok. here's a truncated log of the relevant events: cake.i2p/view/Mf1Yi0VoRo_B4wviJjm038WCh2oLgz9wdvcrLLKaM_jwgOyBgQ5T/wrapper.log
zzz so it's only compatible with java 5's pack200
dr|z3d hmm. ok, guess the logs are a red herring then. so how would I rip out java's pack200 packer and replace with apache's?
dr|z3d hoping for a simple string replace in build.xml :)
zzz put an apache pack200 executable earlier in the shell PATH, or rewrite build.xml to use their ant plugin
dr|z3d ok, thanks, will let you know how I get on.
zzz its not great that apache doesn't support 15 years of p200 format changes from java 6 thru 11 or so
dr|z3d well, yeah, that's still slightly perplexing given the logs.
dr|z3d You'd expect it just to fail, not extract 99% of the files and _then_ fail on 1.
zzz it's not, I promise
zzz it's failing on the first jar.pack and erroring out
dr|z3d ok, I believe you
dr|z3d so I'm inclined to try ant.apache.org/antlibs/compress first, will be fun figuring out how this gets integrated into ant's build process. :|
NarratorZ Where can I find documentation on the Sybil analysis function of the i2p router?
NarratorZ thanks!;-)
dr|z3d ok, zzz, I respectfully disagree with your analysis of the extraction not working.
dr|z3d if the extraction failed in totality, I wouldn't have new timestamps on the resources that are reported as having extracted correctly. which I do.
dr|z3d so I'm back to the theory that there's something atypical about addressbook that's causing it to fail.
dr|z3d I guess the easiest way to test is to create a new ant target minus the addressbook component and see if that succeeds.
dr|z3d on closer inspection, none of the jars are being correctly extracted, addressbook.jar corrupts on extraction leaving a 29byte stub, but theme resources extract a.ok. now let's see if a router only update works.
zzz your javadoc eepsite is pretty but it's a year and a half out of date (((
dr|z3d true, needs a refresh.
dr|z3d feel free to help yourself to the css and incorporate it into ant javadoc target :)
zzz nah, wouldn't want to test across dozens of JVM versions, thanks anyway
dr|z3d valid point. it's tailored to versions that compile without frames, with the jquery search feature.
dr|z3d it works ok with prior versions, but could probably do with some minor cosmetic tweaks.